]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
xfs: don't use __GFP_NOFAIL in xfs_init_fs_context
authorChristoph Hellwig <hch@lst.de>
Fri, 3 Oct 2025 10:12:48 +0000 (12:12 +0200)
committerCarlos Maiolino <cem@kernel.org>
Tue, 21 Oct 2025 09:32:50 +0000 (11:32 +0200)
With enough debug options enabled, struct xfs_mount is larger
than 4k and thus NOFAIL allocations won't work for it.

xfs_init_fs_context is early in the mount process, and if we really
are out of memory there we'd better give up ASAP anyway.

Fixes: 7b77b46a6137 ("xfs: use kmem functions for struct xfs_mount")
Reported-by: syzbot+359a67b608de1ef72f65@syzkaller.appspotmail.com
Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Darrick J. Wong <djwong@kernel.org>
Signed-off-by: Carlos Maiolino <cem@kernel.org>
fs/xfs/xfs_super.c

index 464ae1e657d998f38d4f9ac152e3c0b4db2b8714..9d51186b24ddb442668463e7c5ab6292da5f1020 100644 (file)
@@ -2227,7 +2227,7 @@ xfs_init_fs_context(
        struct xfs_mount        *mp;
        int                     i;
 
-       mp = kzalloc(sizeof(struct xfs_mount), GFP_KERNEL | __GFP_NOFAIL);
+       mp = kzalloc(sizeof(struct xfs_mount), GFP_KERNEL);
        if (!mp)
                return -ENOMEM;