While this is a standard option as documented in mount(8), it is ignored by most filesystems. So reject, unless filesystem explicitly wants to handle it. The exception is unconverted filesystems, where it is unknown if the filesystem handles this or not. Any implementation, such as mount(8), that needs to parse this option without failing can simply ignore the return value from fsconfig(). Signed-off-by: Miklos Szeredi <mszeredi@xxxxxxxxxx> --- fs/fs_context.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/fs/fs_context.c b/fs/fs_context.c index 738f59b6c06a..b37ce07ee230 100644 --- a/fs/fs_context.c +++ b/fs/fs_context.c @@ -51,7 +51,6 @@ static const struct constant_table common_clear_sb_flag[] = { { "nolazytime", SB_LAZYTIME }, { "nomand", SB_MANDLOCK }, { "rw", SB_RDONLY }, - { "silent", SB_SILENT }, }; /* @@ -530,6 +529,15 @@ static int legacy_parse_param(struct fs_context *fc, struct fs_parameter *param) unsigned int size = ctx->data_size; size_t len = 0; + if (strcmp(param->key, "silent") == 0) { + if (param->type != fs_value_is_flag) + return invalf(fc, "%s: Unexpected value for '%s'", + fc->fs_type->name, param->key); + + fc->sb_flags |= SB_SILENT; + return 0; + } + if (strcmp(param->key, "source") == 0) { if (param->type != fs_value_is_string) return invalf(fc, "VFS: Legacy: Non-string source"); -- 2.21.0