On Fri 08-12-23 16:10:22, Alexander Mikhalitsyn wrote: > There is no reason to use a GFP_USER flag for struct super_block allocation > in the alloc_super(). Instead, let's use GFP_KERNEL for that. > > From the memory management perspective, the only difference between > GFP_USER and GFP_KERNEL is that GFP_USER allocations are tied to a cpuset, > while GFP_KERNEL ones are not. > > There is no real issue and this is not a candidate to go to the stable, > but let's fix it for a consistency sake. > > Cc: Jan Kara <jack@xxxxxxx> > Cc: Alexander Viro <viro@xxxxxxxxxxxxxxxxxx> > Cc: Christian Brauner <brauner@xxxxxxxxxx> > Cc: linux-fsdevel@xxxxxxxxxxxxxxx > Cc: linux-kernel@xxxxxxxxxxxxxxx > Signed-off-by: Alexander Mikhalitsyn <aleksandr.mikhalitsyn@xxxxxxxxxxxxx> Yeah, since we allocate other filesystem objects with GFP_KERNEL as well I agree. Feel free to add: Reviewed-by: Jan Kara <jack@xxxxxxx> Honza > diff --git a/fs/super.c b/fs/super.c > index 076392396e72..6fe482371633 100644 > --- a/fs/super.c > +++ b/fs/super.c > @@ -323,7 +323,7 @@ static void destroy_unused_super(struct super_block *s) > static struct super_block *alloc_super(struct file_system_type *type, int flags, > struct user_namespace *user_ns) > { > - struct super_block *s = kzalloc(sizeof(struct super_block), GFP_USER); > + struct super_block *s = kzalloc(sizeof(struct super_block), GFP_KERNEL); > static const struct super_operations default_op; > int i; > > -- > 2.34.1 > -- Jan Kara <jack@xxxxxxxx> SUSE Labs, CR