mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-10-02 07:04:24 +00:00
ceph: return -EINVAL if given fsc mount option on kernel w/o support
[ Upstream commit ff29fde84d
]
If someone requests fscache on the mount, and the kernel doesn't
support it, it should fail the mount.
[ Drop ceph prefix -- it's provided by pr_err. ]
Signed-off-by: Jeff Layton <jlayton@kernel.org>
Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
106f14d2ee
commit
06d3f91ed5
1 changed files with 10 additions and 1 deletions
|
@ -232,6 +232,7 @@ static int parse_fsopt_token(char *c, void *private)
|
|||
return -ENOMEM;
|
||||
break;
|
||||
case Opt_fscache_uniq:
|
||||
#ifdef CONFIG_CEPH_FSCACHE
|
||||
kfree(fsopt->fscache_uniq);
|
||||
fsopt->fscache_uniq = kstrndup(argstr[0].from,
|
||||
argstr[0].to-argstr[0].from,
|
||||
|
@ -240,7 +241,10 @@ static int parse_fsopt_token(char *c, void *private)
|
|||
return -ENOMEM;
|
||||
fsopt->flags |= CEPH_MOUNT_OPT_FSCACHE;
|
||||
break;
|
||||
/* misc */
|
||||
#else
|
||||
pr_err("fscache support is disabled\n");
|
||||
return -EINVAL;
|
||||
#endif
|
||||
case Opt_wsize:
|
||||
if (intval < PAGE_SIZE || intval > CEPH_MAX_WRITE_SIZE)
|
||||
return -EINVAL;
|
||||
|
@ -312,8 +316,13 @@ static int parse_fsopt_token(char *c, void *private)
|
|||
fsopt->flags &= ~CEPH_MOUNT_OPT_INO32;
|
||||
break;
|
||||
case Opt_fscache:
|
||||
#ifdef CONFIG_CEPH_FSCACHE
|
||||
fsopt->flags |= CEPH_MOUNT_OPT_FSCACHE;
|
||||
break;
|
||||
#else
|
||||
pr_err("fscache support is disabled\n");
|
||||
return -EINVAL;
|
||||
#endif
|
||||
case Opt_nofscache:
|
||||
fsopt->flags &= ~CEPH_MOUNT_OPT_FSCACHE;
|
||||
break;
|
||||
|
|
Loading…
Reference in a new issue