diff options
author | Hongbo Li <[email protected]> | 2024-10-10 12:01:48 +0800 |
---|---|---|
committer | Kent Overstreet <[email protected]> | 2024-10-18 00:49:48 -0400 |
commit | 489ecc4cfddada303bd9c2b287a3c8744c324ed3 (patch) | |
tree | b68ddb1149abce7289aa61fb2ca950d53b079794 | |
parent | 07cf8bac2d3efa8d3fb62cd4d98c00087efd7fe8 (diff) |
bcachefs: skip mount option handle for empty string.
The options parse in get_tree will split the options buffer, it will
get the empty string for last one by strsep(). After commit
ea0eeb89b1d5 ("bcachefs: reject unknown mount options") is merged,
unknown mount options is not allowed (here is empty string), and this
causes this errors. This can be reproduced just by the following steps:
bcachefs format /dev/loop
mount -t bcachefs -o metadata_target=loop1 /dev/loop1 /mnt/bcachefs/
Fixes: ea0eeb89b1d5 ("bcachefs: reject unknown mount options")
Signed-off-by: Hongbo Li <[email protected]>
Signed-off-by: Kent Overstreet <[email protected]>
-rw-r--r-- | fs/bcachefs/opts.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/fs/bcachefs/opts.c b/fs/bcachefs/opts.c index 84097235eea9..68d240126522 100644 --- a/fs/bcachefs/opts.c +++ b/fs/bcachefs/opts.c @@ -596,6 +596,9 @@ int bch2_parse_mount_opts(struct bch_fs *c, struct bch_opts *opts, copied_opts_start = copied_opts; while ((opt = strsep(&copied_opts, ",")) != NULL) { + if (!*opt) + continue; + name = strsep(&opt, "="); val = opt; |