]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
drop queue-6.11/revert-mm-introduce-pf_memalloc_noreclaim-pf_memalloc_nowarn.patch
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 18 Oct 2024 05:50:29 +0000 (07:50 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 18 Oct 2024 05:50:29 +0000 (07:50 +0200)
queue-6.11/revert-mm-introduce-pf_memalloc_noreclaim-pf_memalloc_nowarn.patch [deleted file]
queue-6.11/series

diff --git a/queue-6.11/revert-mm-introduce-pf_memalloc_noreclaim-pf_memalloc_nowarn.patch b/queue-6.11/revert-mm-introduce-pf_memalloc_noreclaim-pf_memalloc_nowarn.patch
deleted file mode 100644 (file)
index cd11fc2..0000000
+++ /dev/null
@@ -1,92 +0,0 @@
-From 9a8da05d7ad619beb84d0c6904c3fa7022c6fb9b Mon Sep 17 00:00:00 2001
-From: Michal Hocko <mhocko@suse.com>
-Date: Thu, 26 Sep 2024 19:11:51 +0200
-Subject: Revert "mm: introduce PF_MEMALLOC_NORECLAIM, PF_MEMALLOC_NOWARN"
-
-From: Michal Hocko <mhocko@suse.com>
-
-commit 9a8da05d7ad619beb84d0c6904c3fa7022c6fb9b upstream.
-
-This reverts commit eab0af905bfc3e9c05da2ca163d76a1513159aa4.
-
-There is no existing user of those flags.  PF_MEMALLOC_NOWARN is dangerous
-because a nested allocation context can use GFP_NOFAIL which could cause
-unexpected failure.  Such a code would be hard to maintain because it
-could be deeper in the call chain.
-
-PF_MEMALLOC_NORECLAIM has been added even when it was pointed out [1] that
-such a allocation contex is inherently unsafe if the context doesn't fully
-control all allocations called from this context.
-
-While PF_MEMALLOC_NOWARN is not dangerous the way PF_MEMALLOC_NORECLAIM is
-it doesn't have any user and as Matthew has pointed out we are running out
-of those flags so better reclaim it without any real users.
-
-[1] https://lore.kernel.org/all/ZcM0xtlKbAOFjv5n@tiehlicka/
-
-Link: https://lkml.kernel.org/r/20240926172940.167084-3-mhocko@kernel.org
-Signed-off-by: Michal Hocko <mhocko@suse.com>
-Reviewed-by: Matthew Wilcox (Oracle) <willy@infradead.org>
-Reviewed-by: Christoph Hellwig <hch@lst.de>
-Reviewed-by: Dave Chinner <dchinner@redhat.com>
-Reviewed-by: Vlastimil Babka <vbabka@suse.cz>
-Cc: Al Viro <viro@zeniv.linux.org.uk>
-Cc: Christian Brauner <brauner@kernel.org>
-Cc: James Morris <jmorris@namei.org>
-Cc: Jan Kara <jack@suse.cz>
-Cc: Kent Overstreet <kent.overstreet@linux.dev>
-Cc: Paul Moore <paul@paul-moore.com>
-Cc: Serge E. Hallyn <serge@hallyn.com>
-Cc: Yafang Shao <laoar.shao@gmail.com>
-Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
-Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
----
- include/linux/sched.h    |    4 ++--
- include/linux/sched/mm.h |   17 ++++-------------
- 2 files changed, 6 insertions(+), 15 deletions(-)
-
---- a/include/linux/sched.h
-+++ b/include/linux/sched.h
-@@ -1659,8 +1659,8 @@ extern struct pid *cad_pid;
-                                                * I am cleaning dirty pages from some other bdi. */
- #define PF_KTHREAD            0x00200000      /* I am a kernel thread */
- #define PF_RANDOMIZE          0x00400000      /* Randomize virtual address space */
--#define PF_MEMALLOC_NORECLAIM 0x00800000      /* All allocation requests will clear __GFP_DIRECT_RECLAIM */
--#define PF_MEMALLOC_NOWARN    0x01000000      /* All allocation requests will inherit __GFP_NOWARN */
-+#define PF__HOLE__00800000    0x00800000
-+#define PF__HOLE__01000000    0x01000000
- #define PF__HOLE__02000000    0x02000000
- #define PF_NO_SETAFFINITY     0x04000000      /* Userland is not allowed to meddle with cpus_mask */
- #define PF_MCE_EARLY          0x08000000      /* Early kill for mce process policy */
---- a/include/linux/sched/mm.h
-+++ b/include/linux/sched/mm.h
-@@ -258,25 +258,16 @@ static inline gfp_t current_gfp_context(
- {
-       unsigned int pflags = READ_ONCE(current->flags);
--      if (unlikely(pflags & (PF_MEMALLOC_NOIO |
--                             PF_MEMALLOC_NOFS |
--                             PF_MEMALLOC_NORECLAIM |
--                             PF_MEMALLOC_NOWARN |
--                             PF_MEMALLOC_PIN))) {
-+      if (unlikely(pflags & (PF_MEMALLOC_NOIO | PF_MEMALLOC_NOFS | PF_MEMALLOC_PIN))) {
-               /*
--               * Stronger flags before weaker flags:
--               * NORECLAIM implies NOIO, which in turn implies NOFS
-+               * NOIO implies both NOIO and NOFS and it is a weaker context
-+               * so always make sure it makes precedence
-                */
--              if (pflags & PF_MEMALLOC_NORECLAIM)
--                      flags &= ~__GFP_DIRECT_RECLAIM;
--              else if (pflags & PF_MEMALLOC_NOIO)
-+              if (pflags & PF_MEMALLOC_NOIO)
-                       flags &= ~(__GFP_IO | __GFP_FS);
-               else if (pflags & PF_MEMALLOC_NOFS)
-                       flags &= ~__GFP_FS;
--              if (pflags & PF_MEMALLOC_NOWARN)
--                      flags |= __GFP_NOWARN;
--
-               if (pflags & PF_MEMALLOC_PIN)
-                       flags &= ~__GFP_MOVABLE;
-       }
index 02037dcdd0dea3dfb317e19c8a5fbcbcf5700f14..2e6e57f42f3838089c7d7b117bdf511b88023cf3 100644 (file)
@@ -1,4 +1,3 @@
-revert-mm-introduce-pf_memalloc_noreclaim-pf_memalloc_nowarn.patch
 btrfs-fix-uninitialized-pointer-free-in-add_inode_ref.patch
 btrfs-fix-uninitialized-pointer-free-on-read_alloc_one_name-error.patch
 ksmbd-fix-user-after-free-from-session-log-off.patch