aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDamjan Marion <damarion@cisco.com>2016-02-16 12:29:57 +0100
committerDamjan Marion <damarion@cisco.com>2016-02-16 13:07:20 +0100
commitd8ff0e1dc7a1d7a6d24f16a5318b7fded908d2c5 (patch)
treee776156daa8d361cdba22f5ea6fe8a84bc5d5c01
parentd81566ff92f011704f249372e62f0b5aff1d0653 (diff)
Show DPDK EAL cmdline args in 'show version verbose'
Change-Id: I88a8038a36e7e5060f354cd66a2532ef8c996b67 Signed-off-by: Damjan Marion <damarion@cisco.com>
-rw-r--r--vnet/vnet/devices/dpdk/dpdk.h1
-rw-r--r--vnet/vnet/devices/dpdk/init.c5
-rw-r--r--vpp/app/version.c15
3 files changed, 16 insertions, 5 deletions
diff --git a/vnet/vnet/devices/dpdk/dpdk.h b/vnet/vnet/devices/dpdk/dpdk.h
index 2dab4effb7a..2a9d825e04d 100644
--- a/vnet/vnet/devices/dpdk/dpdk.h
+++ b/vnet/vnet/devices/dpdk/dpdk.h
@@ -322,6 +322,7 @@ typedef struct {
/* Config stuff */
u8 ** eal_init_args;
+ u8 * eal_init_args_str;
u8 * eth_if_blacklist;
u8 * eth_if_whitelist;
u8 * uio_driver_name;
diff --git a/vnet/vnet/devices/dpdk/init.c b/vnet/vnet/devices/dpdk/init.c
index 28a661f58e2..db0b8384dd9 100644
--- a/vnet/vnet/devices/dpdk/init.c
+++ b/vnet/vnet/devices/dpdk/init.c
@@ -1436,6 +1436,11 @@ dpdk_config (vlib_main_t * vm, unformat_input_t * input)
vm = dm->vlib_main;
+ /* make copy of args as rte_eal_init tends to mess up with arg array */
+ for (i = 1; i < vec_len(dm->eal_init_args); i++)
+ dm->eal_init_args_str = format(dm->eal_init_args_str, "%s ",
+ dm->eal_init_args[i]);
+
ret = rte_eal_init(vec_len(dm->eal_init_args), (char **) dm->eal_init_args);
/* lazy umount hugepages */
diff --git a/vpp/app/version.c b/vpp/app/version.c
index afd1e4a3af5..1c1f7a61194 100644
--- a/vpp/app/version.c
+++ b/vpp/app/version.c
@@ -17,6 +17,8 @@
#if DPDK > 0
#include <rte_version.h>
+#include <vnet/vnet.h>
+#include <vnet/devices/dpdk/dpdk.h>
#endif /* DPDK */
static char * vpe_version_string =
@@ -47,13 +49,16 @@ show_vpe_version_command_fn (vlib_main_t * vm,
vlib_cli_command_t * cmd)
{
vlib_cli_output (vm, "%s", vpe_version_string);
- if (unformat (input, "verbose")){
- vlib_cli_output (vm, "%s", vpe_dir_string);
- vlib_cli_output (vm, "%s", vpe_compiler);
+ if (unformat (input, "verbose"))
+ {
+ vlib_cli_output (vm, "%s", vpe_dir_string);
+ vlib_cli_output (vm, "%s", vpe_compiler);
#if DPDK > 0
- vlib_cli_output (vm, "DPDK version is %s", rte_version());
+ vlib_cli_output (vm, "DPDK version is %s", rte_version());
+ vlib_cli_output (vm, "DPDK EAL init arguments: %v",
+ dpdk_main.eal_init_args_str);
#endif
- }
+ }
return 0;
}