X-Git-Url: https://git.whamcloud.com/?p=fs%2Flustre-release.git;a=blobdiff_plain;f=lustre%2Futils%2Flctl.c;h=830d240c91d6a51a8640073a3fd884d0b412b758;hp=4fb70716d8c34238e9a50769249bb8b971e28cdd;hb=6df76d3357fc5896b6902399ed7ce6d7c7835f58;hpb=0d75d5cd5a6217ec75bac8d3f479bbfb8a10be29 diff --git a/lustre/utils/lctl.c b/lustre/utils/lctl.c index 4fb7071..830d240 100644 --- a/lustre/utils/lctl.c +++ b/lustre/utils/lctl.c @@ -49,9 +49,10 @@ static int lctl_list_commands(int argc, char **argv); -static int jt_opt_ignore_errors(int argc, char **argv) { - Parser_ignore_errors(1); - return 0; +static int jt_opt_ignore_errors(int argc, char **argv) +{ + Parser_ignore_errors(1); + return 0; } static int jt_pcc_list_commands(int argc, char **argv); @@ -114,13 +115,13 @@ command_t cmdlist[] = { {"===== network config =====", NULL, 0, "network config"}, {"--net", jt_opt_net, 0, "run after selecting network \n" "usage: --net "}, - {"network", jt_ptl_network, 0, "configure LNET" + {"network", jt_ptl_network, 0, "configure LNET\n" "usage: network up|down"}, - {"net", jt_ptl_network, 0, "configure LNET" + {"net", jt_ptl_network, 0, "configure LNET\n" "usage: net up|down"}, - {"list_nids", jt_ptl_list_nids, 0, "list local NIDs" + {"list_nids", jt_ptl_list_nids, 0, "list local NIDs\n" "usage: list_nids [all]"}, - {"which_nid", jt_ptl_which_nid, 0, "choose a NID" + {"which_nid", jt_ptl_which_nid, 0, "choose a NID\n" "usage: which_nid NID [NID...]"}, {"replace_nids", jt_replace_nids, 0, "replace primary NIDs for a device\n" @@ -191,6 +192,8 @@ command_t cmdlist[] = { "This command should be used on failed OSC devices in an MDT LOV.\n"}, {"abort_recovery", jt_obd_abort_recovery, 0, "abort recovery on a restarting MDT or OST device\n"}, + {"abort_recovery_mdt", jt_obd_abort_recovery_mdt, 0, + "abort recovery between MDTs\n"}, {"set_timeout", jt_lcfg_set_timeout, 0, "usage: conf_param obd_timeout=\n"}, #if LUSTRE_VERSION_CODE < OBD_OCD_VERSION(3, 0, 53, 0) @@ -351,7 +354,7 @@ command_t cmdlist[] = { "add a range to a nodemap\n" "usage: nodemap_del_range "}, {"nodemap_modify", jt_nodemap_modify, 0, - "modify a nodemap parameters" + "modify a nodemap parameters\n" "usage: nodemap_modify nodemap_name param value"}, {"nodemap_add_idmap", jt_nodemap_add_idmap, 0, "add a UID or GID mapping to a nodemap"}, @@ -421,8 +424,10 @@ command_t cmdlist[] = { "usage: lookup "}, {"readonly", jt_obd_set_readonly, 0, "disable writes to the underlying device\n"}, +#ifdef HAVE_SERVER_SUPPORT {"notransno", jt_obd_no_transno, 0, "disable sending of committed-transno updates\n"}, +#endif {"add_uuid", jt_lcfg_add_uuid, 0, "associate a UUID with a NID\n" "usage: add_uuid "}, {"del_uuid", jt_lcfg_del_uuid, 0, "delete a UUID association\n" @@ -505,22 +510,22 @@ command_t cmdlist[] = { /* LFSCK commands */ {"==== LFSCK ====", NULL, 0, "LFSCK"}, {"lfsck_start", jt_lfsck_start, 0, "start LFSCK\n" - "usage: lfsck_start [-M | --device [MDT,OST]_device]\n" - " [-A | --all] [-c | --create-ostobj [on | off]]\n" - " [-C | --create-mdtobj [on | off]]\n" - " [-d | --delay-create-ostobj [on | off]]\n" - " [-e | --error {continue | abort}] [-h | --help]\n" - " [-n | --dryrun [on | off]] [-o | --orphan]\n" - " [-r | --reset] [-s | --speed speed_limit]\n" - " [-t | --type lfsck_type[,lfsck_type...]]\n" - " [-w | --window-size size]"}, + "usage: lfsck_start [--device|-M [MDT,OST]_device]\n" + " [--all|-A] [--create-ostobj|-c [on | off]]\n" + " [--create-mdtobj|-C [on | off]]\n" + " [--delay-create-ostobj|-d [on | off]]\n" + " [--error|-e {continue | abort}] [--help|-h]\n" + " [--dryrun|-n [on | off]] [--orphan|-o]\n" + " [--reset|-r] [--speed|-s speed_limit]\n" + " [--type|-t lfsck_type[,lfsck_type...]]\n" + " [--window-size|-w size]"}, {"lfsck_stop", jt_lfsck_stop, 0, "stop lfsck(s)\n" - "usage: lfsck_stop [-M | --device [MDT,OST]_device]\n" - " [-A | --all] [-h | --help]"}, + "usage: lfsck_stop [--device|-M [MDT,OST]_device]\n" + " [--all|-A] [--help|-h]"}, {"lfsck_query", jt_lfsck_query, 0, "check lfsck(s) status\n" - "usage: lfsck_query [-M | --device MDT_device] [-h | --help]\n" - " [-t | --type lfsck_type[,lfsck_type...]]\n" - " [-w | --wait]"}, + "usage: lfsck_query [--device|-M MDT_device] [--help|-h]\n" + " [--type|-t lfsck_type[,lfsck_type...]]\n" + " [--wait|-w]"}, #endif /* HAVE_SERVER_SUPPORT */ {"cfg_device", jt_obd_device, 0, "set current device to \n" @@ -530,25 +535,26 @@ command_t cmdlist[] = { "usage: recover [MDC/OSC device]"}, /* Llog operations */ {"llog_catlist", jt_llog_catlist, 0, - "list all catalog files on current device.\n" + "list all catalog files on current device. If current device is not\n" + "set, MGS device is used by default.\n" "usage: llog_catlist"}, {"llog_info", jt_llog_info, 0, "print log header information.\n" - "usage: llog_info \n"}, + "usage: llog_info \n"}, {"llog_print", jt_llog_print, 0, "print log content information.\n" - "usage: llog_print [--start ] [--end j]\n" + "usage: llog_print [--start ] [--end j]\n" " print all records by default, or within given index range."}, {"llog_cancel", jt_llog_cancel, 0, "cancel one record in specified log.\n" - "usage:llog_cancel --log_idx \n"}, + "usage:llog_cancel --log_idx \n"}, {"llog_check", jt_llog_check, 0, "verify that log content is valid.\n" - "usage: llog_check [--start ] [--end j]\n" + "usage: llog_check [--start ] [--end j]\n" " check all records from index 1 by default."}, {"llog_remove", jt_llog_remove, 0, "remove one log from catalog or plain log, erase it from disk.\n" - "usage: llog_remove [--log_id ]"}, + "usage: llog_remove [--log_id ]"}, {"==== obsolete (DANGEROUS) ====", NULL, 0, "obsolete (DANGEROUS)"}, /* some test scripts still use these */ /* saving for sanity 44a */ @@ -624,29 +630,29 @@ static int jt_pcc(int argc, char **argv) int lctl_main(int argc, char **argv) { - int rc; + int rc; - setlinebuf(stdout); + setlinebuf(stdout); if (ptl_initialize(argc, argv) < 0) exit(1); - if (obd_initialize(argc, argv) < 0) - exit(2); - if (dbg_initialize(argc, argv) < 0) - exit(3); + if (obd_initialize(argc, argv) < 0) + exit(2); + if (dbg_initialize(argc, argv) < 0) + exit(3); Parser_init("lctl > ", cmdlist); - if (argc > 1) { + if (argc > 1) { llapi_set_command_name(argv[1]); - rc = Parser_execarg(argc - 1, argv + 1, cmdlist); + rc = Parser_execarg(argc - 1, argv + 1, cmdlist); llapi_clear_command_name(); - } else { - rc = Parser_commands(); - } + } else { + rc = Parser_commands(); + } - obd_finalize(argc, argv); - return rc < 0 ? -rc : rc; + obd_finalize(argc, argv); + return rc < 0 ? -rc : rc; } static int lctl_list_commands(int argc, char **argv)