Whamcloud - gitweb
LU-6210 utils: Use C99 initializer for lfsck_types_names
[fs/lustre-release.git] / lustre / utils / lustre_lfsck.c
index f399a32..f3b00f0 100644 (file)
 #include <time.h>
 
 #include "obdctl.h"
+#include "lustreapi_internal.h"
 
 #include <lustre/lustre_lfsck_user.h>
 #include <lnet/lnetctl.h>
-#include <lustre_ioctl.h>
+#include <linux/lustre_ioctl.h>
 /* Needs to be last to avoid clashes */
 #include <libcfs/util/ioctl.h>
 #include <libcfs/util/param.h>
@@ -70,19 +71,17 @@ static struct option long_opt_start[] = {
 };
 
 static struct option long_opt_stop[] = {
-       {"device",      required_argument, 0, 'M'},
-       {"all",         no_argument,       0, 'A'},
-       {"help",        no_argument,       0, 'h'},
-       {0,             0,                 0,  0 }
-};
+       { .val = 'A',   .name = "all",          .has_arg = no_argument },
+       { .val = 'h',   .name = "help",         .has_arg = no_argument },
+       { .val = 'M',   .name = "device",       .has_arg = required_argument },
+       { .name = NULL } };
 
 static struct option long_opt_query[] = {
-       {"device",      required_argument, 0, 'M'},
-       {"type",        required_argument, 0, 't'},
-       {"help",        no_argument,       0, 'h'},
-       {"wait",        no_argument,       0, 'w'},
-       {0,             0,                 0,  0 }
-};
+       { .val = 'h',   .name = "help",         .has_arg = no_argument },
+       { .val = 'M',   .name = "device",       .has_arg = required_argument },
+       { .val = 't',   .name = "type",         .has_arg = required_argument },
+       { .val = 'w',   .name = "wait",         .has_arg = no_argument },
+       { .name = NULL } };
 
 struct lfsck_type_name {
        char            *ltn_name;
@@ -90,13 +89,12 @@ struct lfsck_type_name {
 };
 
 static struct lfsck_type_name lfsck_types_names[] = {
-       { "scrub",      LFSCK_TYPE_SCRUB },
-       { "layout",     LFSCK_TYPE_LAYOUT },
-       { "namespace",  LFSCK_TYPE_NAMESPACE },
-       { "default",    LFSCK_TYPES_DEF },
-       { "all",        LFSCK_TYPES_SUPPORTED },
-       { NULL,         0 }
-};
+       { .ltn_name = "all",            .ltn_type = LFSCK_TYPES_SUPPORTED },
+       { .ltn_name = "default",        .ltn_type = LFSCK_TYPES_DEF },
+       { .ltn_name = "layout",         .ltn_type = LFSCK_TYPE_LAYOUT },
+       { .ltn_name = "namespace",      .ltn_type = LFSCK_TYPE_NAMESPACE },
+       { .ltn_name = "scrub",          .ltn_type = LFSCK_TYPE_SCRUB },
+       { .ltn_name = NULL } };
 
 static enum lfsck_type lfsck_name2type(const char *name)
 {