summaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorRichard Weinberger <richard@nod.at>2013-05-12 23:26:03 +0200
committerRichard Weinberger <richard@nod.at>2013-07-19 10:45:17 +0200
commitdee20035b42d569984d2c16041b51e4d75e233b5 (patch)
tree0364591da4cc991dff5f49feee8fff710a2ab458 /arch
parentum: Fix return value of strnlen_user() (diff)
downloadlinux-dee20035b42d569984d2c16041b51e4d75e233b5.tar.xz
linux-dee20035b42d569984d2c16041b51e4d75e233b5.zip
um: Mark stub pages mapping with VM_PFNMAP
Ensure that a process cannot destroy his stub pages with using MADV_DONTNEED and friends. Reported-by: toralf.foerster@gmx.de Signed-off-by: Richard Weinberger <richard@nod.at>
Diffstat (limited to 'arch')
-rw-r--r--arch/um/kernel/skas/mmu.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/um/kernel/skas/mmu.c b/arch/um/kernel/skas/mmu.c
index ff03067a3b14..007d5503f49b 100644
--- a/arch/um/kernel/skas/mmu.c
+++ b/arch/um/kernel/skas/mmu.c
@@ -123,7 +123,7 @@ void uml_setup_stubs(struct mm_struct *mm)
/* dup_mmap already holds mmap_sem */
err = install_special_mapping(mm, STUB_START, STUB_END - STUB_START,
VM_READ | VM_MAYREAD | VM_EXEC |
- VM_MAYEXEC | VM_DONTCOPY,
+ VM_MAYEXEC | VM_DONTCOPY | VM_PFNMAP,
mm->context.stub_pages);
if (err) {
printk(KERN_ERR "install_special_mapping returned %d\n", err);