xl: Add "xl top" command, a clone of "xm top".
authorKeir Fraser <keir.fraser@citrix.com>
Wed, 12 May 2010 07:52:30 +0000 (08:52 +0100)
committerKeir Fraser <keir.fraser@citrix.com>
Wed, 12 May 2010 07:52:30 +0000 (08:52 +0100)
Signed-off-by: Yang Hongyang <yanghy@cn.fujitsu.com>
tools/libxl/xl_cmdimpl.c
tools/libxl/xl_cmdimpl.h
tools/libxl/xl_cmdtable.c

index 1e2304756ea8e46afd38f2bd8b3c1474b45b4103..ddb0bfd1323ec8e6d6826ace1be7bd1fc6c80d45 100644 (file)
@@ -3098,3 +3098,23 @@ int main_sysrq(int argc, char **argv)
 
     exit(0);
 }
+
+int main_top(int argc, char **argv)
+{
+    int opt;
+
+    while ((opt = getopt(argc, argv, "h")) != -1) {
+        switch (opt) {
+        case 'h':
+            help("top");
+            exit(0);
+        default:
+            fprintf(stderr, "option `%c' not supported.\n", opt);
+            break;
+        }
+    }
+
+    system("xentop");
+
+    exit(0);
+}
index c08c5d1593c6e5e227cea06f00694d600bbac950..3c7b9fd1f6b6ab3e27ba5b536746800cc11a8b4b 100644 (file)
@@ -40,5 +40,6 @@ int main_domname(int argc, char **argv);
 int main_rename(int argc, char **argv);
 int main_trigger(int argc, char **argv);
 int main_sysrq(int argc, char **argv);
+int main_top(int argc, char **argv);
 
 void help(char *command);
index 33582a79d93baf131d305ff4809a097c43604dd0..3609e1b93fe36b54a1c5a712855d0be22ffeb4b9 100644 (file)
@@ -177,6 +177,11 @@ struct cmd_spec cmd_table[] = {
       "Send a sysrq to a domain",
       "<Domain> <letter>",
     },
+    { "top",
+      &main_top,
+      "Monitor a host and the domains in real time",
+      "",
+    },
 };
 
 int cmdtable_len = sizeof(cmd_table)/sizeof(struct cmd_spec);