summaryrefslogtreecommitdiff
path: root/fs/ceph/super.c
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2019-12-17 20:03:59 -0500
committerAl Viro <viro@zeniv.linux.org.uk>2020-02-07 14:48:37 -0500
commit48ce73b1bef20331007b35de7ade8fe26cd55e84 (patch)
tree27cefdfd5e4f49a92d81e6a98f48b4f83a9c1639 /fs/ceph/super.c
parentd7167b149943e38ad610191ecbb0800c78bbced9 (diff)
fs_parse: handle optional arguments sanely
Don't bother with "mixed" options that would allow both the form with and without argument (i.e. both -o foo and -o foo=bar). Rather than trying to shove both into a single fs_parameter_spec, allow having with-argument and no-argument specs with the same name and teach fs_parse to handle that. There are very few options of that sort, and they are actually easier to handle that way - callers end up with less postprocessing. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'fs/ceph/super.c')
-rw-r--r--fs/ceph/super.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/fs/ceph/super.c b/fs/ceph/super.c
index d52eb3edb45d..acdcf96b5bc7 100644
--- a/fs/ceph/super.c
+++ b/fs/ceph/super.c
@@ -179,8 +179,8 @@ static const struct fs_parameter_spec ceph_mount_parameters[] = {
fsparam_flag_no ("copyfrom", Opt_copyfrom),
fsparam_flag_no ("dcache", Opt_dcache),
fsparam_flag_no ("dirstat", Opt_dirstat),
- __fsparam (fs_param_is_string, "fsc", Opt_fscache,
- fs_param_neg_with_no | fs_param_v_optional, NULL),
+ fsparam_flag_no ("fsc", Opt_fscache), // fsc|nofsc
+ fsparam_string ("fsc", Opt_fscache), // fsc=...
fsparam_flag_no ("ino32", Opt_ino32),
fsparam_string ("mds_namespace", Opt_mds_namespace),
fsparam_flag_no ("poolperm", Opt_poolperm),