[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen-unstable] xl: Add command description to command table
# HG changeset patch # User Keir Fraser <keir.fraser@xxxxxxxxxx> # Date 1272969426 -3600 # Node ID ef961ddf8b33ed1a549f0eb0a180293fb5d54839 # Parent 35da124fc66a92592395b507bcb25e5b534405f3 xl: Add command description to command table Signed-off-by: Yang Hongyang <yanghy@xxxxxxxxxxxxxx> --- tools/libxl/Makefile | 5 ++++- tools/libxl/xl_cmdimpl.c | 29 ++++++++--------------------- tools/libxl/xl_cmdtable.c | 41 +++++++++++++++++++++++++++++++++++++++++ tools/libxl/xl_cmdtable.h | 28 +++------------------------- 4 files changed, 56 insertions(+), 47 deletions(-) diff -r 35da124fc66a -r ef961ddf8b33 tools/libxl/Makefile --- a/tools/libxl/Makefile Tue May 04 11:28:06 2010 +0100 +++ b/tools/libxl/Makefile Tue May 04 11:37:06 2010 +0100 @@ -82,7 +82,10 @@ xl_cmdimpl.o: xl_cmdimpl.c xl_cmdimpl.o: xl_cmdimpl.c $(CC) $(CFLAGS) -c xl_cmdimpl.c -$(CLIENTS): xl.o xl_cmdimpl.o libxlutil.so libxenlight.so +xl_cmdtable.o: xl_cmdtable.c + $(CC) $(CFLAGS) -c xl_cmdtable.c + +$(CLIENTS): xl.o xl_cmdimpl.o xl_cmdtable.o libxlutil.so libxenlight.so $(CC) $(LDFLAGS) -o $@ $^ $(LIBS) .PHONY: install diff -r 35da124fc66a -r ef961ddf8b33 tools/libxl/xl_cmdimpl.c --- a/tools/libxl/xl_cmdimpl.c Tue May 04 11:28:06 2010 +0100 +++ b/tools/libxl/xl_cmdimpl.c Tue May 04 11:37:06 2010 +0100 @@ -38,6 +38,7 @@ #include "libxl.h" #include "libxl_utils.h" #include "libxlutil.h" +#include "xl_cmdtable.h" #define UUID_FMT "%02hhx%02hhx%02hhx%02hhx-%02hhx%02hhx-%02hhx%02hhx-%02hhx%02hhx-%02hhx%02hhx%02hhx%02hhx%02hhx%02hhx" @@ -1078,28 +1079,14 @@ start: void help(char *command) { + int i; + if (!command || !strcmp(command, "help")) { printf("Usage xl <subcommand> [args]\n\n"); printf("xl full list of subcommands:\n\n"); - printf(" create create a domain from config file <filename>\n\n"); - printf(" list list information about all domains\n\n"); - printf(" destroy terminate a domain immediately\n\n"); - printf(" pci-attach insert a new pass-through pci device\n\n"); - printf(" pci-detach remove a domain's pass-through pci device\n\n"); - printf(" pci-list list pass-through pci devices for a domain\n\n"); - printf(" pause pause execution of a domain\n\n"); - printf(" unpause unpause a paused domain\n\n"); - printf(" console attach to domain's console\n\n"); - printf(" save save a domain state to restore later\n\n"); - printf(" restore restore a domain from a saved state\n\n"); - printf(" cd-insert insert a cdrom into a guest's cd drive\n\n"); - printf(" cd-eject eject a cdrom from a guest's cd drive\n\n"); - printf(" mem-set set the current memory usage for a domain\n\n"); - printf(" button-press indicate an ACPI button press to the domain\n\n"); - printf(" vcpu-list list the VCPUs for all/some domains.\n\n"); - printf(" vcpu-pin Set which CPUs a VCPU can use.\n\n"); - printf(" vcpu-set Set the number of active VCPUs allowed for the domain.\n\n"); - printf(" sched-credit Get/set credit scheduler parameters.\n\n"); + for (i = 0; i < cmdtable_len; i++) + printf(" %-25s%s\n\n", + cmd_table[i].cmd_name, cmd_table[i].cmd_desc); } else if(!strcmp(command, "create")) { printf("Usage: xl create <ConfigFile> [options] [vars]\n\n"); printf("Create a domain based on <ConfigFile>.\n\n"); @@ -2481,7 +2468,7 @@ void vcpulist(int argc, char **argv) ; } -void main_vcpulist(int argc, char **argv) +int main_vcpulist(int argc, char **argv) { int opt; @@ -2736,7 +2723,7 @@ static void info(int verbose) return; } -void main_info(int argc, char **argv) +int main_info(int argc, char **argv) { int opt, verbose; diff -r 35da124fc66a -r ef961ddf8b33 tools/libxl/xl_cmdtable.c --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tools/libxl/xl_cmdtable.c Tue May 04 11:37:06 2010 +0100 @@ -0,0 +1,41 @@ +/* + * Author Yang Hongyang <yanghy@xxxxxxxxxxxxxx> + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License as published + * by the Free Software Foundation; version 2.1 only. with the special + * exception on linking described in file LICENSE. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License for more details. + */ + +#include "xl_cmdtable.h" + +struct cmd_spec cmd_table[] = { + { "create", &main_create, "create a domain from config file <filename>" }, + { "list", &main_list, "list information about all domains" }, + { "destroy", &main_destroy, "terminate a domain immediately" }, + { "pci-attach", &main_pciattach, "insert a new pass-through pci device" }, + { "pci-detach", &main_pcidetach, "remove a domain's pass-through pci device" }, + { "pci-list", &main_pcilist, "list pass-through pci devices for a domain" }, + { "pause", &main_pause, "pause execution of a domain" }, + { "unpause", &main_unpause, "unpause a paused domain" }, + { "console", &main_console, "attach to domain's console" }, + { "save", &main_save, "save a domain state to restore later" }, + { "restore", &main_restore, "restore a domain from a saved state" }, + { "cd-insert", &main_cd_insert, "insert a cdrom into a guest's cd drive" }, + { "cd-eject", &main_cd_eject, "eject a cdrom from a guest's cd drive" }, + { "mem-set", &main_memset, "set the current memory usage for a domain" }, + { "button-press", &main_button_press, "indicate an ACPI button press to the domain" }, + { "vcpu-list", &main_vcpulist, "list the VCPUs for all/some domains" }, + { "vcpu-pin", &main_vcpupin, "set which CPUs a VCPU can use" }, + { "vcpu-set", &main_vcpuset, "set the number of active VCPUs allowed for the domain" }, + { "list-vm", &main_list_vm, "list the VMs,without DOM0" }, + { "info", &main_info, "get information about Xen host" }, + { "sched-credit", &main_sched_credit, "get/set credit scheduler parameters" } +}; + +int cmdtable_len = sizeof(cmd_table)/sizeof(struct cmd_spec); diff -r 35da124fc66a -r ef961ddf8b33 tools/libxl/xl_cmdtable.h --- a/tools/libxl/xl_cmdtable.h Tue May 04 11:28:06 2010 +0100 +++ b/tools/libxl/xl_cmdtable.h Tue May 04 11:37:06 2010 +0100 @@ -17,30 +17,8 @@ struct cmd_spec { struct cmd_spec { char *cmd_name; int (*cmd_impl)(int argc, char **argv); + char *cmd_desc; }; -struct cmd_spec cmd_table[] = { - { "create", &main_create }, - { "list", &main_list }, - { "destroy", &main_destroy }, - { "pci-attach", &main_pciattach }, - { "pci-detach", &main_pcidetach }, - { "pci-list", &main_pcilist }, - { "pause", &main_pause }, - { "unpause", &main_unpause }, - { "console", &main_console }, - { "save", &main_save }, - { "restore", &main_restore }, - { "cd-insert", &main_cd_insert }, - { "cd-eject", &main_cd_eject }, - { "mem-set", &main_memset }, - { "button-press", &main_button_press }, - { "vcpu-list", &main_vcpulist }, - { "vcpu-pin", &main_vcpupin }, - { "vcpu-set", &main_vcpuset }, - { "list-vm", &main_list_vm }, - { "info", &main_info }, - { "sched-credit", &main_sched_credit }, -}; - -int cmdtable_len = sizeof(cmd_table)/sizeof(struct cmd_spec); +extern struct cmd_spec cmd_table[]; +extern int cmdtable_len; _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |