commit: dc9e253c22b2d3fec7a59f68cb454d4fe849d773 Author: Mike Pagano <mpagano <AT> gentoo <DOT> org> AuthorDate: Wed Jul 5 20:40:24 2023 +0000 Commit: Mike Pagano <mpagano <AT> gentoo <DOT> org> CommitDate: Wed Jul 5 20:40:24 2023 +0000 URL: https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=dc9e253c
Remove redundant patch Removed: 1800_mm-execve-mark-stack-as-growing-down.patch Signed-off-by: Mike Pagano <mpagano <AT> gentoo.org> 0000_README | 4 -- 1800_mm-execve-mark-stack-as-growing-down.patch | 82 ------------------------- 2 files changed, 86 deletions(-) diff --git a/0000_README b/0000_README index f9224452..7e83110e 100644 --- a/0000_README +++ b/0000_README @@ -63,10 +63,6 @@ Patch: 1700_sparc-address-warray-bound-warnings.patch From: https://github.com/KSPP/linux/issues/109 Desc: Address -Warray-bounds warnings -Patch: 1800_mm-execve-mark-stack-as-growing-down.patch -From: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git -Desc: execve: always mark stack as growing down during early stack setup - Patch: 1805_mm-disable-CONFIG-PER-VMA-LOCK-by-def.patch From: https://lore.kernel.org/all/20230703182150.2193578-1-sur...@google.com/ Desc: mm: disable CONFIG_PER_VMA_LOCK by default until its fixed diff --git a/1800_mm-execve-mark-stack-as-growing-down.patch b/1800_mm-execve-mark-stack-as-growing-down.patch deleted file mode 100644 index 07daf228..00000000 --- a/1800_mm-execve-mark-stack-as-growing-down.patch +++ /dev/null @@ -1,82 +0,0 @@ -From d7a7655b29081c053b1abe71f64a2928638dafc6 Mon Sep 17 00:00:00 2001 -From: Linus Torvalds <torva...@linux-foundation.org> -Date: Sun, 2 Jul 2023 23:20:17 -0700 -Subject: execve: always mark stack as growing down during early stack setup - -commit f66066bc5136f25e36a2daff4896c768f18c211e upstream. - -While our user stacks can grow either down (all common architectures) or -up (parisc and the ia64 register stack), the initial stack setup when we -copy the argument and environment strings to the new stack at execve() -time is always done by extending the stack downwards. - -But it turns out that in commit 8d7071af8907 ("mm: always expand the -stack with the mmap write lock held"), as part of making the stack -growing code more robust, 'expand_downwards()' was now made to actually -check the vma flags: - - if (!(vma->vm_flags & VM_GROWSDOWN)) - return -EFAULT; - -and that meant that this execve-time stack expansion started failing on -parisc, because on that architecture, the stack flags do not contain the -VM_GROWSDOWN bit. - -At the same time the new check in expand_downwards() is clearly correct, -and simplified the callers, so let's not remove it. - -The solution is instead to just codify the fact that yes, during -execve(), the stack grows down. This not only matches reality, it ends -up being particularly simple: we already have special execve-time flags -for the stack (VM_STACK_INCOMPLETE_SETUP) and use those flags to avoid -page migration during this setup time (see vma_is_temporary_stack() and -invalid_migration_vma()). - -So just add VM_GROWSDOWN to that set of temporary flags, and now our -stack flags automatically match reality, and the parisc stack expansion -works again. - -Note that the VM_STACK_INCOMPLETE_SETUP bits will be cleared when the -stack is finalized, so we only add the extra VM_GROWSDOWN bit on -CONFIG_STACK_GROWSUP architectures (ie parisc) rather than adding it in -general. - -Link: https://lore.kernel.org/all/612eaa53-6904-6e16-67fc-394f4faa0...@bell.net/ -Link: https://lore.kernel.org/all/5fd98a09-4792-1433-752d-029ae3545...@gmx.de/ -Fixes: 8d7071af8907 ("mm: always expand the stack with the mmap write lock held") -Reported-by: John David Anglin <dave.ang...@bell.net> -Reported-and-tested-by: Helge Deller <del...@gmx.de> -Reported-and-tested-by: Guenter Roeck <li...@roeck-us.net> -Signed-off-by: Linus Torvalds <torva...@linux-foundation.org> -Signed-off-by: Greg Kroah-Hartman <gre...@linuxfoundation.org> ---- - include/linux/mm.h | 4 +++- - 1 file changed, 3 insertions(+), 1 deletion(-) - -diff --git a/include/linux/mm.h b/include/linux/mm.h -index 6cbcc55a80b02..9e10485f37e7f 100644 ---- a/include/linux/mm.h -+++ b/include/linux/mm.h -@@ -377,7 +377,7 @@ extern unsigned int kobjsize(const void *objp); - #endif /* CONFIG_HAVE_ARCH_USERFAULTFD_MINOR */ - - /* Bits set in the VMA until the stack is in its final location */ --#define VM_STACK_INCOMPLETE_SETUP (VM_RAND_READ | VM_SEQ_READ) -+#define VM_STACK_INCOMPLETE_SETUP (VM_RAND_READ | VM_SEQ_READ | VM_STACK_EARLY) - - #define TASK_EXEC ((current->personality & READ_IMPLIES_EXEC) ? VM_EXEC : 0) - -@@ -399,8 +399,10 @@ extern unsigned int kobjsize(const void *objp); - - #ifdef CONFIG_STACK_GROWSUP - #define VM_STACK VM_GROWSUP -+#define VM_STACK_EARLY VM_GROWSDOWN - #else - #define VM_STACK VM_GROWSDOWN -+#define VM_STACK_EARLY 0 - #endif - - #define VM_STACK_FLAGS (VM_STACK | VM_STACK_DEFAULT_FLAGS | VM_ACCOUNT) --- -cgit -