From 01455386f7186721ffd7578d95a84580a5ff7087 Mon Sep 17 00:00:00 2001
From: Martin Klozik <martinx.klozik@intel.com>
Date: Thu, 20 Jul 2017 15:49:16 +0100
Subject: dpdk: Support dpdk vhost-user client mode

Support of vhost-user client mode has been added for both
OVS and VPP. VSPERF configures vhost-user server mode
in vswitches by default for backward compatibility.
Support of vhost-user server mode is deprecated
in OVS and it can be removed in future releases. Once it will
happen, we have to change vsperf default behavior to
usage of vhost-user client ports at vswitch side.

This patch also fixes processing of boolean configuration
parameters passed via --test-params option. In the past
it was not possible to set boolean value to False through
--test-params option.

JIRA: VSPERF-517

Change-Id: I65e341f820edd6c720043a4acc74c5140b05db18
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>
---
 conf/02_vswitch.conf | 7 +++++++
 conf/__init__.py     | 2 +-
 2 files changed, 8 insertions(+), 1 deletion(-)

(limited to 'conf')

diff --git a/conf/02_vswitch.conf b/conf/02_vswitch.conf
index 6a6027a9..c50a5ddd 100644
--- a/conf/02_vswitch.conf
+++ b/conf/02_vswitch.conf
@@ -153,6 +153,13 @@ VSWITCHD_DPDK_CONFIG = {
 # Note: VSPERF will automatically detect, which type of DPDK configuration should
 # be used.
 
+# Defines if VSWITCH should be a server for sockets of DPDK vhost-user
+# interfaces (True) or not (False). Support of vhost user server mode
+# in Open vSwitch is deprecated and will be removed in future releases.
+# Note: Qemu 2.7 and newer is required to support settings
+# VSWITCH_VHOSTUSER_SERVER_MODE = False
+VSWITCH_VHOSTUSER_SERVER_MODE = True
+
 # To enable multi queue with dpdk modify the below param to the number of
 # queues for dpdk. 0 = disabled
 VSWITCH_DPDK_MULTI_QUEUES = 0
diff --git a/conf/__init__.py b/conf/__init__.py
index e24111dc..e714a7bf 100644
--- a/conf/__init__.py
+++ b/conf/__init__.py
@@ -93,7 +93,7 @@ class Settings(object):
                 master_value = getattr(self, attr)
                 # Check if parameter value was modified by CLI option
                 cli_value = get_test_param(attr, None)
-                if cli_value:
+                if cli_value is not None:
                     # TRAFFIC dictionary is not overridden by CLI option
                     # but only updated by specified values
                     if attr == 'TRAFFIC':
-- 
cgit