f2fs: pass sbi rather than sb to parse_options()

With the new mount API the sb will not be available during initial option
parsing, which will happen before fill_super reads sb from disk.

Now that the sb is no longer directly referenced in parse_options, switch
it to use sbi.

(Note that all calls to f2fs_sb_has_* originating from parse_options will
need to be deferred to later before we can use the new mount API.)

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Reviewed-by: Chao Yu <chao@kernel.org>
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
This commit is contained in:
Eric Sandeen
2025-03-03 11:12:19 -06:00
committed by Jaegeuk Kim
parent b7de231b9d
commit 71e9bd3d5c

View File

@@ -673,9 +673,8 @@ static int f2fs_set_zstd_level(struct f2fs_sb_info *sbi, const char *str)
#endif
#endif
static int parse_options(struct super_block *sb, char *options, bool is_remount)
static int parse_options(struct f2fs_sb_info *sbi, char *options, bool is_remount)
{
struct f2fs_sb_info *sbi = F2FS_SB(sb);
substring_t args[MAX_OPT_ARGS];
#ifdef CONFIG_F2FS_FS_COMPRESSION
unsigned char (*ext)[F2FS_EXTENSION_LEN];
@@ -2376,7 +2375,7 @@ static int f2fs_remount(struct super_block *sb, int *flags, char *data)
default_options(sbi, true);
/* parse mount options */
err = parse_options(sb, data, true);
err = parse_options(sbi, data, true);
if (err)
goto restore_opts;
@@ -4546,7 +4545,7 @@ static int f2fs_fill_super(struct super_block *sb, void *data, int silent)
goto free_sb_buf;
}
err = parse_options(sb, options, false);
err = parse_options(sbi, options, false);
if (err)
goto free_options;