vpp: Multiqueue support for VPP 55/46755/1
authorMartin Klozik <martinx.klozik@intel.com>
Fri, 3 Nov 2017 13:50:00 +0000 (13:50 +0000)
committerMartin Klozik <martinx.klozik@intel.com>
Mon, 6 Nov 2017 13:40:24 +0000 (13:40 +0000)
VPP class was updated to configure RX queues of VPP interfaces
based on VSWITCH_DPDK_MULTI_QUEUES value.

Change-Id: I855dbaef86cf935b2639976e8b1757eb1af4e9ac
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>
vswitches/vpp_dpdk_vhost.py

index 2ac70a1..bb47278 100644 (file)
@@ -71,8 +71,14 @@ class VppDpdkVhost(IVSwitch, tasks.Process):
         # configure path to the plugins
         tmp_args['plugin_path'] = S.getValue('TOOLS')['vpp_plugin_path']
 
+        mqs = int(S.getValue('VSWITCH_DPDK_MULTI_QUEUES'))
+        tmp_rxqs = ''
+        if mqs:
+            tmp_rxqs = " {{ num-rx-queues {} }}".format(mqs)
+
+        # configure physical ports
         for nic in S.getValue('NICS'):
-            tmp_args['dpdk'].append("dev {}".format(nic['pci']))
+            tmp_args['dpdk'].append("dev {}{}".format(nic['pci'], tmp_rxqs))
         self._vswitch_args = self._process_vpp_args(tmp_args)
 
     def _get_nic_info(self, key='Name'):