btrfs-progs: qgroup assign: handle --no-rescan option
authorSatoru Takeuchi <takeuchi_satoru@jp.fujitsu.com>
Fri, 18 Mar 2016 01:36:29 +0000 (10:36 +0900)
committerDavid Sterba <dsterba@suse.com>
Fri, 18 Mar 2016 13:19:29 +0000 (14:19 +0100)
* 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>
cmds-qgroup.c

index 45075a3..14418d4 100644 (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
 };