On 9/15/16 2:57 PM, Bill O'Donnell wrote: > Some commands are disallowed for foreign filesystems, > regardless of whether or not the -f flag is thrown. > Add a case for this condition and improve commenting > and output messaging accordingly in init_check_command. > > Signed-off-by: Bill O'Donnell <billodo@xxxxxxxxxx> Thanks, Bill. Reviewed-by: Eric Sandeen <sandeen@xxxxxxxxxx> > --- > history: > v3: clarify foreign filesystem user output message. > v2: no change > v1: http://www.spinics.net/lists/linux-xfs/msg00685.html > > quota/init.c | 18 +++++++++++++----- > 1 file changed, 13 insertions(+), 5 deletions(-) > > diff --git a/quota/init.c b/quota/init.c > index 2c18c8b..3bebbb8 100644 > --- a/quota/init.c > +++ b/quota/init.c > @@ -112,21 +112,29 @@ init_check_command( > if (!fs_path) > return 1; > > - /* Always run commands that we are told to skip here */ > + /* Always run commands that are valid for all fs types. */ > if (ct->flags & CMD_ALL_FSTYPES) > return 1; > > - /* if it's an XFS filesystem, always run the command */ > + /* If it's an XFS filesystem, always run the command. */ > if (!(fs_path->fs_flags & FS_FOREIGN)) > return 1; > > - /* If the user specified foreign filesysetms are ok, run it */ > + /* If the user specified foreign filesystems are ok (-f), run cmd. */ > if (foreign_allowed && > (ct->flags & CMD_FLAG_FOREIGN_OK)) > return 1; > > - /* foreign filesystem and it's not a valid command! */ > - fprintf(stderr, _("%s command is for XFS filesystems only\n"), > + /* If cmd not allowed on foreign fs, regardless of -f flag, skip it. */ > + if (!(ct->flags & CMD_FLAG_FOREIGN_OK)) { > + fprintf(stderr, _("%s: command is for XFS filesystems only\n"), > + ct->name); > + return 0; > + } > + > + /* foreign fs, but cmd only allowed via -f flag. Skip it. */ > + fprintf(stderr, > + _("%s: foreign filesystem. Invoke xfs_quota with -f to enable.\n"), > ct->name); > return 0; > } > _______________________________________________ xfs mailing list xfs@xxxxxxxxxxx http://oss.sgi.com/mailman/listinfo/xfs