exec: Remove FOLL_FORCE for stack setup
authorKees Cook <keescook@chromium.org>
Fri, 18 Nov 2022 00:31:55 +0000 (16:31 -0800)
committerKees Cook <keescook@chromium.org>
Fri, 18 Nov 2022 00:31:55 +0000 (16:31 -0800)
It does not appear that FOLL_FORCE should be needed for setting up the
stack pages. They are allocated using the nascent brpm->vma, which was
newly created with VM_STACK_FLAGS, which an arch can override, but they
all appear to include VM_WRITE | VM_MAYWRITE. Remove FOLL_FORCE.

Cc: Eric Biederman <ebiederm@xmission.com>
Cc: David Hildenbrand <david@redhat.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Alexander Viro <viro@zeniv.linux.org.uk>
Cc: linux-fsdevel@vger.kernel.org
Cc: linux-mm@kvack.org
Link: https://lore.kernel.org/lkml/202211171439.CDE720EAD@keescook/
Signed-off-by: Kees Cook <keescook@chromium.org>
fs/exec.c

index 9585bc1..870a707 100644 (file)
--- a/fs/exec.c
+++ b/fs/exec.c
@@ -200,7 +200,7 @@ static struct page *get_arg_page(struct linux_binprm *bprm, unsigned long pos,
 {
        struct page *page;
        int ret;
-       unsigned int gup_flags = FOLL_FORCE;
+       unsigned int gup_flags = 0;
 
 #ifdef CONFIG_STACK_GROWSUP
        if (write) {