Andrew Price <anprice@xxxxxxxxxx> wrote: > + pr_warn("-o debug and -o errors=panic are mutually exclusive\n"); > + return -EINVAL; return invalf(fc, "gfs2: -o debug and -o errors=panic are mutually exclusive"); (Note: no "\n") > + if (result.int_32 > 0) > + args->ar_quota = opt_quota_values[result.int_32]; > + else if (result.negated) > + args->ar_quota = GFS2_QUOTA_OFF; > + else > + args->ar_quota = GFS2_QUOTA_ON; I recommend checking result.negated first. > + /* Not allowed to change locking details */ > + if (strcmp(newargs->ar_lockproto, oldargs->ar_lockproto) || > + strcmp(newargs->ar_locktable, oldargs->ar_locktable) || > + strcmp(newargs->ar_hostdata, oldargs->ar_hostdata)) > + return -EINVAL; Use errorf(). (Not invalf - the parameter isn't exactly invalid, it's just that you're not allowed to do this operation). > + error = gfs2_make_fs_ro(sdp); > + else > + error = gfs2_make_fs_rw(sdp); > + if (error) > + return error; Might want to call errorf() here too. > - s = sget(&gfs2_fs_type, test_gfs2_super, set_meta_super, flags, > + s = sget(&gfs2_fs_type, test_meta_super, set_meta_super, flags, Try and use sget_fc() please. If you look at the fuse patchset I cc'd you on, there's a commit there that adds a ->bdev and ->bdev_mode to fs_context that may be of use to you. Can you use vfs_get_block_super()? Would it be of use to export test_bdev_super_fc() and set_bdev_super_fc()? David