Whamcloud - gitweb
git://git.whamcloud.com
/
fs
/
lustre-release.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
| inline |
side by side
b=22455 add "list_param -R"
[fs/lustre-release.git]
/
lustre
/
utils
/
lctl.c
diff --git
a/lustre/utils/lctl.c
b/lustre/utils/lctl.c
index
a1b58f6
..
f1c7c31
100644
(file)
--- a/
lustre/utils/lctl.c
+++ b/
lustre/utils/lctl.c
@@
-137,14
+137,25
@@
command_t cmdlist[] = {
{"local_param", jt_lcfg_param, 0, "set a temporary, local param\n"
"usage: local_param <target.keyword=val> ...\n"},
{"get_param", jt_lcfg_getparam, 0, "get the Lustre or LNET parameter\n"
- "usage: get_param [-n|-N] name.of.param\n"
- "Get the value of Lustre or LNET parameter from the specified path\n"
- "Use '-n' to disable printing of parameter name when printing value\n"
- "Use '-N' to print only parameter names and not the values."},
+ "usage: get_param [-n|-N|-F] <param_path1 param_path2 ...>\n"
+ "Get the value of Lustre or LNET parameter from the specified path.\n"
+ "The path can contain shell-style filename patterns.\n"
+ " -n Print only the value and not parameter name.\n"
+ " -N Print only matched parameter names and not the values.\n"
+ " (Especially useful when using patterns.)\n"
+ " -F When -N specified, add '/', '@' or '=' for directories,\n"
+ " symlinks and writeable files, respectively."},
{"set_param", jt_lcfg_setparam, 0, "set the Lustre or LNET parameter\n"
- "usage: set_param [-n]
name.of.param=value
\n"
+ "usage: set_param [-n]
<param_path1=value1 param_path2 value2 ...>
\n"
"Set the value of the Lustre or LNET parameter at the specified path\n"
- "Use '-n' to disable printing of parameter name when setting value\n"},
+ " -n Disable printing of the key name when printing values."},
+ {"list_param", jt_lcfg_listparam, 0,
+ "list the Lustre or LNET parameter name\n"
+ "usage: list_param [-F] <param_path1 param_path2 ...>\n"
+ "List the name of Lustre or LNET parameter from the specified path.\n"
+ " -F Add '/', '@' or '=' for dirs, symlinks and writeable files,\n"
+ "respectively.\n"
+ " -R Recursively list all parameters under the specified path.\n"},
/* Debug commands */
{"==== debugging control ====", jt_noop, 0, "debug"},
@@
-178,6
+189,45
@@
command_t cmdlist[] = {
"provide gdb-friendly module information\n"
"usage: modules <path>"},
+ /* virtual block operations */
+ {"==== virtual block device ====", jt_noop, 0, "virtual block device"},
+ {"blockdev_attach", jt_blockdev_attach, 0,
+ "attach a lustre regular file to a virtual block device\n"
+ "usage: blockdev_attach <file_name> <device_name>"},
+ {"blockdev_detach", jt_blockdev_detach, 0,
+ "detach a lustre regular file from a virtual block device\n"
+ "usage: blockdev_detach <device_name>"},
+ {"blockdev_info", jt_blockdev_info, 0,
+ "get the device info of a attached file\n"
+ "usage: blockdev_info <device_name>"},
+
+ /* Pool commands */
+ {"=== Pools ==", jt_noop, 0, "pool management"},
+ {"pool_new", jt_pool_cmd, 0,
+ "add a new pool\n"
+ "usage pool_new <fsname>.<poolname>"},
+ {"pool_add", jt_pool_cmd, 0,
+ "add the named OSTs to the pool\n"
+ "usage pool_add <fsname>.<poolname> <ostname indexed list>"},
+ {"pool_remove", jt_pool_cmd, 0,
+ "remove the named OST from the pool\n"
+ "usage pool_remove <fsname>.<poolname> <ostname indexed list>"},
+ {"pool_destroy", jt_pool_cmd, 0,
+ "destroy a pool\n"
+ "usage pool_destroy <fsname>.<poolname>"},
+ {"pool_list", jt_pool_cmd, 0,
+ "list pools and pools members\n"
+ "usage pool_list <fsname>[.<poolname>] | <pathname>"},
+
+ /* Changelog commands */
+ {"=== Changelogs ==", jt_noop, 0, "changelog user management"},
+ {"changelog_register", jt_changelog_register, 0,
+ "register a new persistent changelog user, returns id\n"
+ "usage:\tdevice <mdtname>\n\tchangelog_register [-n]"},
+ {"changelog_deregister", jt_changelog_deregister, 0,
+ "deregister an existing changelog user\n"
+ "usage:\tdevice <mdtname>\n\tchangelog_deregister <id>"},
+
/* Device configuration commands */
{"== device setup (these are not normally used post 1.4) ==",
jt_noop, 0, "device config"},
@@
-196,18
+246,6
@@
command_t cmdlist[] = {
"print log of recorded commands for this config to kernel debug log\n"
"usage: dump_cfg config-uuid-name"},
- /* virtual block operations */
- {"==== virtual block device ====", jt_noop, 0, "virtual block device"},
- {"blockdev_attach", jt_blockdev_attach, 0,
- "attach a lustre regular file to a virtual block device\n"
- "usage: blockdev_attach <file_name> <device_name>"},
- {"blockdev_detach", jt_blockdev_detach, 0,
- "detach a lustre regular file from a virtual block device\n"
- "usage: blockdev_detach <device_name>"},
- {"blockdev_info", jt_blockdev_info, 0,
- "get the device info of a attached file\n"
- "usage: blockdev_info <device_name>"},
-
/* Test only commands */
{"==== testing (DANGEROUS) ====", jt_noop, 0, "testing (DANGEROUS)"},
{"--threads", jt_opt_threads, 0,
@@
-269,6
+307,9
@@
command_t cmdlist[] = {
{"memhog", jt_ptl_memhog, 0,
"memory pressure testing\n"
"usage: memhog <page count> [<gfp flags>]"},
+ {"getobjversion", jt_get_obj_version, 0,
+ "get the version of an object on servers\n"
+ "usage: getobjversion <fid>"},
{"==== obsolete (DANGEROUS) ====", jt_noop, 0, "obsolete (DANGEROUS)"},
/* some test scripts still use these */
@@
-345,7
+386,7
@@
int lctl_main(int argc, char **argv)
}
obd_finalize(argc, argv);
- return rc;
+ return rc
< 0 ? -rc : rc
;
}
#ifndef LIBLUSTRE_TEST