summaryrefslogtreecommitdiffstats
path: root/vtysh/vtysh.c
diff options
context:
space:
mode:
authorDonald Sharp <sharpd@cumulusnetworks.com>2015-08-20 03:33:13 +0200
committerDonald Sharp <sharpd@cumulusnetworks.com>2015-08-20 03:33:13 +0200
commit0f69b58cb82b097b39b24598a55522c86cfb37e8 (patch)
tree15b7ac72cda9119ca3356b897ae2ba7c24f7c3ef /vtysh/vtysh.c
parentMerge branch 'cmaster' of ssh://stash.cumulusnetworks.com:7999/quag/quagga in... (diff)
downloadfrr-0f69b58cb82b097b39b24598a55522c86cfb37e8.tar.xz
frr-0f69b58cb82b097b39b24598a55522c86cfb37e8.zip
Add missing vtysh commands
Ticket: CM-7135 Reviewed-by: CCR-3367 Testing: See Bug The commands 'show work-queues' and 'show thread cpu X' were missing from vtysh but available from the telnet cli.
Diffstat (limited to 'vtysh/vtysh.c')
-rw-r--r--vtysh/vtysh.c52
1 files changed, 52 insertions, 0 deletions
diff --git a/vtysh/vtysh.c b/vtysh/vtysh.c
index 5d8d319f5..32df0901b 100644
--- a/vtysh/vtysh.c
+++ b/vtysh/vtysh.c
@@ -1567,6 +1567,52 @@ ALIAS (vtysh_exit_interface,
"quit",
"Exit current mode and down to previous mode\n")
+DEFUN (vtysh_show_thread,
+ vtysh_show_thread_cmd,
+ "show thread cpu [FILTER]",
+ SHOW_STR
+ "Thread information\n"
+ "Thread CPU usage\n"
+ "Display filter (rwtexb)\n")
+{
+ unsigned int i;
+ int ret = CMD_SUCCESS;
+ char line[100];
+
+ sprintf(line, "show thread cpu %s\n", (argc == 1) ? argv[0] : "");
+ for (i = 0; i < array_size(vtysh_client); i++)
+ if ( vtysh_client[i].fd >= 0 )
+ {
+ fprintf (stdout, "Thread statistics for %s:\n",
+ vtysh_client[i].name);
+ ret = vtysh_client_execute (&vtysh_client[i], line, stdout);
+ fprintf (stdout,"\n");
+ }
+ return ret;
+}
+
+DEFUN (vtysh_show_work_queues,
+ vtysh_show_work_queues_cmd,
+ "show work-queues",
+ SHOW_STR
+ "Work Queue information\n")
+{
+ unsigned int i;
+ int ret = CMD_SUCCESS;
+ char line[] = "show work-queues\n";
+
+ for (i = 0; i < array_size(vtysh_client); i++)
+ if ( vtysh_client[i].fd >= 0 )
+ {
+ fprintf (stdout, "Work queue statistics for %s:\n",
+ vtysh_client[i].name);
+ ret = vtysh_client_execute (&vtysh_client[i], line, stdout);
+ fprintf (stdout,"\n");
+ }
+
+ return ret;
+}
+
/* Memory */
DEFUN (vtysh_show_memory,
vtysh_show_memory_cmd,
@@ -2835,6 +2881,12 @@ vtysh_init_vty (void)
install_element (VIEW_NODE, &vtysh_show_memory_cmd);
install_element (ENABLE_NODE, &vtysh_show_memory_cmd);
+ install_element (VIEW_NODE, &vtysh_show_work_queues_cmd);
+ install_element (ENABLE_NODE, &vtysh_show_work_queues_cmd);
+
+ install_element (VIEW_NODE, &vtysh_show_thread_cmd);
+ install_element (ENABLE_NODE, &vtysh_show_thread_cmd);
+
/* Logging */
install_element (ENABLE_NODE, &vtysh_show_logging_cmd);
install_element (VIEW_NODE, &vtysh_show_logging_cmd);