Message ID | 1433531567-3948-1-git-send-email-fabf@skynet.be (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Fri, Jun 5, 2015 at 10:12 PM, Fabian Frederick <fabf@skynet.be> wrote: > ceph used -1 for the last match_table_t option. > Use Opt_err enum like other FS > > match_token() is based on the pattern (NULL) > so behavior should remain the same. > > Signed-off-by: Fabian Frederick <fabf@skynet.be> > --- > This is untested. If this one is ok, I can send the same update > for rbd and net/ceph. > > fs/ceph/super.c | 5 +++-- > 1 file changed, 3 insertions(+), 2 deletions(-) > > diff --git a/fs/ceph/super.c b/fs/ceph/super.c > index 4e99053..35ef692 100644 > --- a/fs/ceph/super.c > +++ b/fs/ceph/super.c > @@ -137,7 +137,8 @@ enum { > #ifdef CONFIG_CEPH_FS_POSIX_ACL > Opt_acl, > #endif > - Opt_noacl > + Opt_noacl, > + Opt_err > }; > > static match_table_t fsopt_tokens = { > @@ -169,7 +170,7 @@ static match_table_t fsopt_tokens = { > {Opt_acl, "acl"}, > #endif > {Opt_noacl, "noacl"}, > - {-1, NULL} > + {Opt_err, NULL} > }; > > static int parse_fsopt_token(char *c, void *private) This would result in a BUG on any unknown option - match_token->token is what match_token() returns and parse_fsopt_token() clearly expects that to be a negative value. Thanks, Ilya -- To unsubscribe from this list: send the line "unsubscribe ceph-devel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Sun, Jun 14, 2015 at 12:05 PM, Fabian Frederick <fabf@skynet.be> wrote: > > >> On 08 June 2015 at 09:49 Ilya Dryomov <idryomov@gmail.com> wrote: >> >> >> On Fri, Jun 5, 2015 at 10:12 PM, Fabian Frederick <fabf@skynet.be> wrote: >> > ceph used -1 for the last match_table_t option. >> > Use Opt_err enum like other FS >> > >> > match_token() is based on the pattern (NULL) >> > so behavior should remain the same. >> > >> > Signed-off-by: Fabian Frederick <fabf@skynet.be> >> > --- >> > This is untested. If this one is ok, I can send the same update >> > for rbd and net/ceph. >> > >> > fs/ceph/super.c | 5 +++-- >> > 1 file changed, 3 insertions(+), 2 deletions(-) >> > >> > diff --git a/fs/ceph/super.c b/fs/ceph/super.c >> > index 4e99053..35ef692 100644 >> > --- a/fs/ceph/super.c >> > +++ b/fs/ceph/super.c >> > @@ -137,7 +137,8 @@ enum { >> > #ifdef CONFIG_CEPH_FS_POSIX_ACL >> > Opt_acl, >> > #endif >> > - Opt_noacl >> > + Opt_noacl, >> > + Opt_err >> > }; >> > >> > static match_table_t fsopt_tokens = { >> > @@ -169,7 +170,7 @@ static match_table_t fsopt_tokens = { >> > {Opt_acl, "acl"}, >> > #endif >> > {Opt_noacl, "noacl"}, >> > - {-1, NULL} >> > + {Opt_err, NULL} >> > }; >> > >> > static int parse_fsopt_token(char *c, void *private) >> >> This would result in a BUG on any unknown option - match_token->token >> is what match_token() returns and parse_fsopt_token() clearly expects >> that to be a negative value. >> >> Thanks, > > Maybe we could remove the following test ? > > token = match_token((char *)c, fsopt_tokens, argstr); > if (token < 0) > return -EINVAL; > > and return -EINVAL in switch default case ? Sounds good. Thanks, Ilya -- To unsubscribe from this list: send the line "unsubscribe ceph-devel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/fs/ceph/super.c b/fs/ceph/super.c index 4e99053..35ef692 100644 --- a/fs/ceph/super.c +++ b/fs/ceph/super.c @@ -137,7 +137,8 @@ enum { #ifdef CONFIG_CEPH_FS_POSIX_ACL Opt_acl, #endif - Opt_noacl + Opt_noacl, + Opt_err }; static match_table_t fsopt_tokens = { @@ -169,7 +170,7 @@ static match_table_t fsopt_tokens = { {Opt_acl, "acl"}, #endif {Opt_noacl, "noacl"}, - {-1, NULL} + {Opt_err, NULL} }; static int parse_fsopt_token(char *c, void *private)
ceph used -1 for the last match_table_t option. Use Opt_err enum like other FS match_token() is based on the pattern (NULL) so behavior should remain the same. Signed-off-by: Fabian Frederick <fabf@skynet.be> --- This is untested. If this one is ok, I can send the same update for rbd and net/ceph. fs/ceph/super.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-)