btrfs-progs: qgroup assign: handle --no-rescan option

* actual result

   ==================================================
   # btrfs qgroup assign --no-rescan 0/260 1/261 /btrfs
   btrfs qgroup assign: unrecognized option '--no-rescan'
   usage: btrfs qgroup assign [options] <src> <dst> <path>

       Assign SRC as the child qgroup of DST

       --rescan       schedule qutoa rescan if needed
       --no-rescan

   ==================================================

* expected result

   ==================================================
   # ./btrfs qgroup assign --no-rescan 0/260 1/261 /btrfs
   #
   ==================================================

Signed-off-by: Satoru Takeuchi <takeuchi_satoru@jp.fujitsu.com>
Signed-off-by: David Sterba <dsterba@suse.com>
This commit is contained in:
Satoru Takeuchi 2016-03-18 10:36:29 +09:00 committed by David Sterba
parent 208ba29007
commit 9fa1f12caa

View File

@ -44,10 +44,12 @@ static int _cmd_qgroup_assign(int assign, int argc, char **argv,
if (assign) {
while (1) {
enum { GETOPT_VAL_RESCAN = 256 };
enum { GETOPT_VAL_RESCAN = 256, GETOPT_VAL_NO_RESCAN };
static const struct option long_options[] = {
{ "rescan", no_argument, NULL,
GETOPT_VAL_RESCAN },
{ "no-rescan", no_argument, NULL,
GETOPT_VAL_NO_RESCAN },
{ NULL, 0, NULL, 0 }
};
int c = getopt_long(argc, argv, "", long_options, NULL);
@ -58,6 +60,9 @@ static int _cmd_qgroup_assign(int assign, int argc, char **argv,
case GETOPT_VAL_RESCAN:
rescan = 1;
break;
case GETOPT_VAL_NO_RESCAN:
rescan = 0;
break;
default:
/* Usage printed by the caller */
return -1;
@ -208,7 +213,7 @@ static const char * const cmd_qgroup_assign_usage[] = {
"Assign SRC as the child qgroup of DST",
"",
"--rescan schedule qutoa rescan if needed",
"--no-rescan ",
"--no-rescan don't schedule quota rescan",
NULL
};