Skip to content

Commit 438ea90

Browse files
committed
fabrics: add global default command line arguments
Let NVMF_ARGS use NVME_ARGS, so that the common default comamnd line arguments are also present for the fabrics commands. Signed-off-by: Daniel Wagner <[email protected]>
1 parent b52a6a0 commit 438ea90

1 file changed

Lines changed: 18 additions & 40 deletions

File tree

fabrics.c

Lines changed: 18 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -111,7 +111,7 @@ struct nvmf_args {
111111
};
112112

113113
#define NVMF_ARGS(n, f, c, ...) \
114-
struct argconfig_commandline_options n[] = { \
114+
NVME_ARGS(n, \
115115
OPT_STRING("transport", 't', "STR", &f.transport, nvmf_tport), \
116116
OPT_STRING("nqn", 'n', "STR", &f.subsysnqn, nvmf_nqn), \
117117
OPT_STRING("traddr", 'a', "STR", &f.traddr, nvmf_traddr), \
@@ -141,9 +141,9 @@ struct nvmf_args {
141141
OPT_FLAG("data-digest", 'G', &c.data_digest, nvmf_data_digest), \
142142
OPT_FLAG("tls", 0, &c.tls, nvmf_tls), \
143143
OPT_FLAG("concat", 0, &c.concat, nvmf_concat), \
144-
__VA_ARGS__, \
145-
OPT_END() \
146-
}
144+
##__VA_ARGS__ \
145+
)
146+
147147

148148
static void save_discovery_log(char *raw, struct nvmf_discovery_log *log)
149149
{
@@ -476,9 +476,7 @@ int fabrics_discovery(const char *desc, int argc, char **argv, bool connect)
476476
nvme_print_flags_t flags;
477477
_cleanup_nvme_global_ctx_ struct nvme_global_ctx *ctx = NULL;
478478
_cleanup_free_ struct nvmf_context *fctx = NULL;
479-
unsigned int verbose = 0;
480479
int ret;
481-
char *format = "normal";
482480
struct nvme_fabrics_config cfg;
483481
struct nvmf_args fa = { .subsysnqn = NVME_DISC_SUBSYS_NAME };
484482
char *device = NULL;
@@ -489,12 +487,10 @@ int fabrics_discovery(const char *desc, int argc, char **argv, bool connect)
489487

490488
NVMF_ARGS(opts, fa, cfg,
491489
OPT_STRING("device", 'd', "DEV", &device, "use existing discovery controller device"),
492-
OPT_FMT("output-format", 'o', &format, output_format),
493490
OPT_FILE("raw", 'r', &raw, "save raw output to file"),
494491
OPT_FLAG("persistent", 'p', &persistent, "persistent discovery connection"),
495492
OPT_FLAG("quiet", 0, &quiet, "suppress already connected errors"),
496493
OPT_STRING("config", 'J', "FILE", &config_file, nvmf_config_file),
497-
OPT_INCR("verbose", 'v', &verbose, "Increase logging verbosity"),
498494
OPT_FLAG("dump-config", 'O', &dump_config, "Dump configuration file to stdout"),
499495
OPT_FLAG("force", 0, &force, "Force persistent discovery controller creation"),
500496
OPT_FLAG("nbft", 0, &nbft, "Only look at NBFT tables"),
@@ -508,7 +504,7 @@ int fabrics_discovery(const char *desc, int argc, char **argv, bool connect)
508504
if (ret)
509505
return ret;
510506

511-
ret = validate_output_format(format, &flags);
507+
ret = validate_output_format(nvme_args.output_format, &flags);
512508
if (ret < 0) {
513509
nvme_show_error("Invalid output format");
514510
return ret;
@@ -517,7 +513,7 @@ int fabrics_discovery(const char *desc, int argc, char **argv, bool connect)
517513
if (!strcmp(config_file, "none"))
518514
config_file = NULL;
519515

520-
log_level = map_log_level(verbose, quiet);
516+
log_level = map_log_level(nvme_args.verbose, quiet);
521517

522518
ctx = nvme_create_global_ctx(stderr, log_level);
523519
if (!ctx) {
@@ -590,21 +586,17 @@ int fabrics_connect(const char *desc, int argc, char **argv)
590586
_cleanup_free_ char *hid = NULL;
591587
char *config_file = NULL;
592588
char *context = NULL;
593-
unsigned int verbose = 0;
594589
_cleanup_nvme_global_ctx_ struct nvme_global_ctx *ctx = NULL;
595590
_cleanup_free_ struct nvmf_context *fctx = NULL;
596591
_cleanup_nvme_ctrl_ nvme_ctrl_t c = NULL;
597592
int ret;
598593
nvme_print_flags_t flags;
599594
struct nvme_fabrics_config cfg = { 0 };
600595
struct nvmf_args fa = { 0 };
601-
char *format = "normal";
602596

603597
NVMF_ARGS(opts, fa, cfg,
604598
OPT_STRING("config", 'J', "FILE", &config_file, nvmf_config_file),
605-
OPT_INCR("verbose", 'v', &verbose, "Increase logging verbosity"),
606599
OPT_FLAG("dump-config", 'O', &dump_config, "Dump JSON configuration to stdout"),
607-
OPT_FMT("output-format", 'o', &format, "Output format: normal|json"),
608600
OPT_STRING("context", 0, "STR", &context, nvmf_context));
609601

610602
nvmf_default_config(&cfg);
@@ -613,7 +605,7 @@ int fabrics_connect(const char *desc, int argc, char **argv)
613605
if (ret)
614606
return ret;
615607

616-
ret = validate_output_format(format, &flags);
608+
ret = validate_output_format(nvme_args.output_format, &flags);
617609
if (ret < 0) {
618610
nvme_show_error("Invalid output format");
619611
return ret;
@@ -644,7 +636,7 @@ int fabrics_connect(const char *desc, int argc, char **argv)
644636
}
645637

646638
do_connect:
647-
log_level = map_log_level(verbose, quiet);
639+
log_level = map_log_level(nvme_args.verbose, quiet);
648640

649641
ctx = nvme_create_global_ctx(stderr, log_level);
650642
if (!ctx) {
@@ -746,17 +738,13 @@ int fabrics_disconnect(const char *desc, int argc, char **argv)
746738
struct config {
747739
char *nqn;
748740
char *device;
749-
unsigned int verbose;
750741
};
751742

752743
struct config cfg = { 0 };
753744

754-
OPT_ARGS(opts) = {
745+
NVME_ARGS(opts,
755746
OPT_STRING("nqn", 'n', "NAME", &cfg.nqn, nvmf_nqn),
756-
OPT_STRING("device", 'd', "DEV", &cfg.device, device),
757-
OPT_INCR("verbose", 'v', &cfg.verbose, "Increase logging verbosity"),
758-
OPT_END()
759-
};
747+
OPT_STRING("device", 'd', "DEV", &cfg.device, device));
760748

761749
ret = argconfig_parse(argc, argv, desc, opts);
762750
if (ret)
@@ -773,7 +761,7 @@ int fabrics_disconnect(const char *desc, int argc, char **argv)
773761
return -EINVAL;
774762
}
775763

776-
log_level = map_log_level(cfg.verbose, false);
764+
log_level = map_log_level(nvme_args.verbose, false);
777765

778766
ctx = nvme_create_global_ctx(stderr, log_level);
779767
if (!ctx) {
@@ -834,22 +822,18 @@ int fabrics_disconnect_all(const char *desc, int argc, char **argv)
834822

835823
struct config {
836824
char *transport;
837-
unsigned int verbose;
838825
};
839826

840827
struct config cfg = { 0 };
841828

842-
OPT_ARGS(opts) = {
843-
OPT_STRING("transport", 'r', "STR", (char *)&cfg.transport, nvmf_tport),
844-
OPT_INCR("verbose", 'v', &cfg.verbose, "Increase logging verbosity"),
845-
OPT_END()
846-
};
829+
NVME_ARGS(opts,
830+
OPT_STRING("transport", 'r', "STR", (char *)&cfg.transport, nvmf_tport));
847831

848832
ret = argconfig_parse(argc, argv, desc, opts);
849833
if (ret)
850834
return ret;
851835

852-
log_level = map_log_level(cfg.verbose, false);
836+
log_level = map_log_level(nvme_args.verbose, false);
853837

854838
ctx = nvme_create_global_ctx(stderr, log_level);
855839
if (!ctx) {
@@ -901,12 +885,10 @@ int fabrics_config(const char *desc, int argc, char **argv)
901885
char *config_file = PATH_NVMF_CONFIG;
902886
struct nvme_fabrics_config cfg;
903887
struct nvmf_args fa = { };
904-
unsigned int verbose = 0;
905888
int ret;
906889

907890
NVMF_ARGS(opts, fa, cfg,
908891
OPT_STRING("config", 'J', "FILE", &config_file, nvmf_config_file),
909-
OPT_INCR("verbose", 'v', &verbose, "Increase logging verbosity"),
910892
OPT_FLAG("scan", 'R', &scan_tree, "Scan current NVMeoF topology"),
911893
OPT_FLAG("modify", 'M', &modify_config, "Modify JSON configuration file"),
912894
OPT_FLAG("dump", 'O', &dump_config, "Dump JSON configuration to stdout"),
@@ -921,7 +903,7 @@ int fabrics_config(const char *desc, int argc, char **argv)
921903
if (!strcmp(config_file, "none"))
922904
config_file = NULL;
923905

924-
log_level = map_log_level(verbose, quiet);
906+
log_level = map_log_level(nvme_args.verbose, quiet);
925907

926908
ctx = nvme_create_global_ctx(stderr, log_level);
927909
if (!ctx) {
@@ -1015,16 +997,12 @@ int fabrics_dim(const char *desc, int argc, char **argv)
1015997
char *nqn;
1016998
char *device;
1017999
char *tas;
1018-
unsigned int verbose;
10191000
} cfg = { 0 };
10201001

1021-
OPT_ARGS(opts) = {
1002+
NVME_ARGS(opts,
10221003
OPT_STRING("nqn", 'n', "NAME", &cfg.nqn, "Comma-separated list of DC nqn"),
10231004
OPT_STRING("device", 'd', "DEV", &cfg.device, "Comma-separated list of DC nvme device handle."),
1024-
OPT_STRING("task", 't', "TASK", &cfg.tas, "[register|deregister]"),
1025-
OPT_INCR("verbose", 'v', &cfg.verbose, "Increase logging verbosity"),
1026-
OPT_END()
1027-
};
1005+
OPT_STRING("task", 't', "TASK", &cfg.tas, "[register|deregister]"));
10281006

10291007
ret = argconfig_parse(argc, argv, desc, opts);
10301008
if (ret)
@@ -1052,7 +1030,7 @@ int fabrics_dim(const char *desc, int argc, char **argv)
10521030
return -EINVAL;
10531031
}
10541032

1055-
log_level = map_log_level(cfg.verbose, false);
1033+
log_level = map_log_level(nvme_args.verbose, false);
10561034

10571035
ctx = nvme_create_global_ctx(stderr, log_level);
10581036
if (!ctx) {

0 commit comments

Comments
 (0)