Re: [PATCH] xfs: propagate errors from xfs_rtginode_load
From: Darrick J. Wong
Date: Sun Jul 12 2026 - 12:23:06 EST
On Sun, Jul 12, 2026 at 03:42:56AM +0000, Guanghui Yang wrote:
> xfs_rtginode_ensure() treats every xfs_rtginode_load() error other than
> -ENOENT as success. This can leave the realtime group inode unset after an
> I/O, allocation, or corruption error. Growfs then continues as though the
> inode had been loaded.
>
> Only -ENOENT means that the inode needs to be created. Return all other
> errors to the growfs caller.
>
> Fixes: ae897e0bed0f ("xfs: support creating per-RTG files in growfs")
> Cc: stable@xxxxxxxxxxxxxxx
> Signed-off-by: Guanghui Yang <3497809730@xxxxxx>
Yeah, that's correct
Reviewed-by: "Darrick J. Wong" <djwong@xxxxxxxxxx>
--D
> ---
> fs/xfs/xfs_rtalloc.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/fs/xfs/xfs_rtalloc.c b/fs/xfs/xfs_rtalloc.c
> index 7a3f97686989..84efe5a8fb11 100644
> --- a/fs/xfs/xfs_rtalloc.c
> +++ b/fs/xfs/xfs_rtalloc.c
> @@ -737,7 +737,7 @@ xfs_rtginode_ensure(
> xfs_trans_cancel(tp);
>
> if (error != -ENOENT)
> - return 0;
> + return error;
> return xfs_rtginode_create(rtg, type, true);
> }
>
> --
> 2.34.1
>