From 8255b24478d1f83818bc48dc6a5d97828f4a1979 Mon Sep 17 00:00:00 2001 From: Linus Torvalds Date: Fri, 5 Dec 2003 22:34:40 -0800 Subject: [PATCH] Fix the PROT_EXEC breakage on anonymous mmap. Clean up the tests while at it. --- mm/mmap.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/mm/mmap.c b/mm/mmap.c index 7a3a68e52afeb..5b2e70ba64503 100644 --- a/mm/mmap.c +++ b/mm/mmap.c @@ -475,11 +475,13 @@ unsigned long do_mmap_pgoff(struct file * file, unsigned long addr, struct rb_node ** rb_link, * rb_parent; unsigned long charged = 0; - if (file && (!file->f_op || !file->f_op->mmap)) - return -ENODEV; + if (file) { + if (!file->f_op || !file->f_op->mmap) + return -ENODEV; - if ((prot & PROT_EXEC) && (file->f_vfsmnt->mnt_flags & MNT_NOEXEC)) - return -EPERM; + if ((prot & PROT_EXEC) && (file->f_vfsmnt->mnt_flags & MNT_NOEXEC)) + return -EPERM; + } if (!len) return addr; -- 2.53.0