On Mon 26-08-24 21:48:34, Yafang Shao wrote: > On Mon, Aug 26, 2024 at 4:53 PM Michal Hocko <mhocko@xxxxxxxxxx> wrote: > > > > From: Michal Hocko <mhocko@xxxxxxxx> > > > > There is no existing user of the flag and the flag 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. > > > > [1] https://lore.kernel.org/all/ZcM0xtlKbAOFjv5n@tiehlicka/ > > > > Signed-off-by: Michal Hocko <mhocko@xxxxxxxx> > > --- > > include/linux/sched.h | 1 - > > include/linux/sched/mm.h | 7 ++----- > > 2 files changed, 2 insertions(+), 6 deletions(-) > > > > diff --git a/include/linux/sched.h b/include/linux/sched.h > > index f8d150343d42..72dad3a6317a 100644 > > --- a/include/linux/sched.h > > +++ b/include/linux/sched.h > > @@ -1657,7 +1657,6 @@ 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 */ > > To maintain consistency with the other unused bits, it would be better > to define PF__HOLE__00800000 instead. OK -- Michal Hocko SUSE Labs