diff options
author | Martin Klozik <martinx.klozik@intel.com> | 2017-11-14 12:55:09 +0000 |
---|---|---|
committer | Martin Klozik <martinx.klozik@intel.com> | 2017-11-14 13:25:58 +0000 |
commit | 31770a64cd8a5c40ee3657ac97e87a900f7aeca5 (patch) | |
tree | 2cca08a0ea7e1ed643789d716d709909e7037762 | |
parent | 1653f5d6a12febed50f138076dcf8c191d9f24e6 (diff) |
vpp: Define vppctl socket name
Newer versions of VPP require an explicit definition of CLI socket
file for proper functionality. Otherwise vppctl is not able to connect
to running vpp process and thus vsperf is not able to configure
and control vpp.
Change-Id: Id0df75fd0894e22b1b4d7fa05e16f49efe20d3ab
Signed-off-by: Martin Klozik <martinx.klozik@intel.com>
Reviewed-by: Al Morton <acmorton@att.com>
Reviewed-by: Christian Trautman <ctrautma@redhat.com>
Reviewed-by: Sridhar Rao <sridhar.rao@spirent.com>
Reviewed-by: Trevor Cooper <trevor.cooper@intel.com>
-rw-r--r-- | conf/02_vswitch.conf | 1 | ||||
-rw-r--r-- | vswitches/vpp_dpdk_vhost.py | 9 |
2 files changed, 9 insertions, 1 deletions
diff --git a/conf/02_vswitch.conf b/conf/02_vswitch.conf index 92521f9a..6a830a05 100644 --- a/conf/02_vswitch.conf +++ b/conf/02_vswitch.conf @@ -206,6 +206,7 @@ VSWITCH_JUMBO_FRAMES_SIZE = 9000 ######################### # Set of arguments used for startup of VPP # NOTE: DPDK socket mem allocation is driven by parameter DPDK_SOCKET_MEM +VSWITCH_VPP_CLI_SOCK = '' VSWITCH_VPP_ARGS = { 'unix' : [ 'interactive', # required by VSPERF to detect successful VPP startup diff --git a/vswitches/vpp_dpdk_vhost.py b/vswitches/vpp_dpdk_vhost.py index bb472788..c62e28d4 100644 --- a/vswitches/vpp_dpdk_vhost.py +++ b/vswitches/vpp_dpdk_vhost.py @@ -50,6 +50,7 @@ class VppDpdkVhost(IVSwitch, tasks.Process): self._phy_ports = [] self._virt_ports = [] self._switches = {} + self._vpp_ctl = ['sudo', S.getValue('TOOLS')['vppctl']] # configure DPDK NICs tmp_args = copy.deepcopy(S.getValue('VSWITCH_VPP_ARGS')) @@ -71,6 +72,12 @@ class VppDpdkVhost(IVSwitch, tasks.Process): # configure path to the plugins tmp_args['plugin_path'] = S.getValue('TOOLS')['vpp_plugin_path'] + # cli sock file must be used for VPP 17.10 and newer + if S.getValue('VSWITCH_VPP_CLI_SOCK'): + self._vpp_ctl += ['-s', S.getValue('VSWITCH_VPP_CLI_SOCK')] + tmp_args['unix'].append('cli-listen {}'.format( + S.getValue('VSWITCH_VPP_CLI_SOCK'))) + mqs = int(S.getValue('VSWITCH_DPDK_MULTI_QUEUES')) tmp_rxqs = '' if mqs: @@ -371,7 +378,7 @@ class VppDpdkVhost(IVSwitch, tasks.Process): :return: None """ - cmd = ['sudo', S.getValue('TOOLS')['vppctl']] + args + cmd = self._vpp_ctl + args return tasks.run_task(cmd, self._logger, 'Running vppctl...', check_error) # |