diff options
Diffstat (limited to 'conf/02_vswitch.conf')
-rw-r--r-- | conf/02_vswitch.conf | 114 |
1 files changed, 75 insertions, 39 deletions
diff --git a/conf/02_vswitch.conf b/conf/02_vswitch.conf index abca63bb..f9b8f957 100644 --- a/conf/02_vswitch.conf +++ b/conf/02_vswitch.conf @@ -12,17 +12,8 @@ # See the License for the specific language governing permissions and # limitations under the License. -# ############################ -# Directories -# ############################ -# use DPDK VHOST USER by default -RTE_SDK = RTE_SDK_USER -OVS_DIR = OVS_DIR_USER - -OVS_VAR_DIR = '/usr/local/var/run/openvswitch/' -OVS_ETC_DIR = '/usr/local/etc/openvswitch/' - -VSWITCH_DIR = os.path.join(ROOT_DIR, 'vswitches') +# OVS Command timeout for execution of commands. +OVS_CMD_TIMEOUT = 10 # ############################ # DPDK configuration @@ -38,29 +29,83 @@ RTE_TARGET = 'x86_64-native-linuxapp-gcc' # will be used for testing WHITELIST_NICS = ['0000:05:00.0', '0000:05:00.1'] -# for DPDK_MODULES the path is in reference to the build directory -# To use vfio set -# DPDK_MODULES = [ -# ('vfio-pci'), -# ] -DPDK_MODULES = [ - ('kmod', 'igb_uio'), -] +# vhost character device file used by dpdkvhostport QemuWrap cases +VHOST_DEV_FILE = 'ovs-vhost-net' -VHOST_MODULE = [ - ('eventfd_link', 'eventfd_link') -] +# location of vhost-user sockets relative to 'ovs_var_tmp' +VHOST_USER_SOCKS = 'dpdkvhostuser*' + +# please see conf/00_common.conf for description of PATHS dictionary +PATHS['dpdk'] = { + 'type' : 'src', + 'src': { + 'path': os.path.join(ROOT_DIR, 'src/dpdk/dpdk/'), + # To use vfio set: + # 'modules' : ['uio', 'vfio-pci'], + 'modules' : ['uio', os.path.join(RTE_TARGET, 'kmod/igb_uio.ko')], + 'bind-tool': 'tools/dpdk*bind.py', + 'testpmd': os.path.join(RTE_TARGET, 'app', 'testpmd'), + }, + 'bin': { + 'bind-tool': '/usr/share/dpdk/tools/dpdk*bind.py', + 'modules' : ['uio', 'igb_uio'], + 'testpmd' : 'testpmd' + } + } -# list of modules that will be inserted using 'modprobe' on system init -# To use vfio set -# SYS_MODULES = ['cuse'] -SYS_MODULES = ['uio', 'cuse'] +# ############################ +# Directories +# ############################ +VSWITCH_DIR = os.path.join(ROOT_DIR, 'vswitches') -# vhost character device file used by dpdkvhostport QemuWrap cases -VHOST_DEV_FILE = 'ovs-vhost-net' +# please see conf/00_common.conf for description of PATHS dictionary +# Every vswitch type supported by VSPERF must have its configuration +# stored inside PATHS['vswitch']. List of all supported vswitches +# can be obtained by call of ./vsperf --list-vswitches +# +# Directories defined by "ovs_var_tmp" and "ovs_etc_tmp" will be used +# by OVS to temporarily store its configuration, pid and socket files. +# In case, that these directories exist already, then their original +# content will be restored after the testcase execution. + +PATHS['vswitch'] = { + 'none' : { # used by SRIOV tests + 'type' : 'src', + 'src' : {}, + }, + 'OvsDpdkVhost': { + 'type' : 'src', + 'src': { + 'path': os.path.join(ROOT_DIR, 'src/ovs/ovs/'), + 'ovs-vswitchd': 'vswitchd/ovs-vswitchd', + 'ovsdb-server': 'ovsdb/ovsdb-server', + 'ovsdb-tool': 'ovsdb/ovsdb-tool', + 'ovsschema': 'vswitchd/vswitch.ovsschema', + 'ovs-vsctl': 'utilities/ovs-vsctl', + 'ovs-ofctl': 'utilities/ovs-ofctl', + 'ovs-dpctl': 'utilities/ovs-dpctl', + 'ovs-appctl': 'utilities/ovs-appctl', + }, + 'bin': { + 'ovs-vswitchd': 'ovs-vswitchd', + 'ovsdb-server': 'ovsdb-server', + 'ovsdb-tool': 'ovsdb-tool', + 'ovsschema': '/usr/share/openvswitch/vswitch.ovsschema', + 'ovs-vsctl': 'ovs-vsctl', + 'ovs-ofctl': 'ovs-ofctl', + 'ovs-dpctl': 'ovs-dpctl', + 'ovs-appctl': 'ovs-appctl', + } + }, + 'ovs_var_tmp': '/usr/local/var/run/openvswitch/', + 'ovs_etc_tmp': '/usr/local/etc/openvswitch/', +} -# location of vhost-user sockets -VHOST_USER_SOCKS = os.path.join(OVS_VAR_DIR, 'dpdkvhostuser*') +# default OvsVanilla configuration is similar to OvsDpdkVhost except 'path' and 'modules' +PATHS['vswitch'].update({'OvsVanilla' : copy.deepcopy(PATHS['vswitch']['OvsDpdkVhost'])}) +PATHS['vswitch']['OvsVanilla']['src']['path'] = os.path.join(ROOT_DIR, 'src_vanilla/ovs/ovs/') +PATHS['vswitch']['OvsVanilla']['src']['modules'] = ['datapath/linux/openvswitch.ko'] +PATHS['vswitch']['OvsVanilla']['bin']['modules'] = ['openvswitch'] # ############################ # vswitch configuration @@ -93,9 +138,6 @@ OVS_OLD_STYLE_MQ = False # parameters passed to ovs-vswitchd in case that OvsVanilla is selected VSWITCHD_VANILLA_ARGS = [] -# use full module path to load module matching OVS version built from the source -VSWITCH_VANILLA_KERNEL_MODULES = ['libcrc32c', 'ip_tunnel', 'vxlan', 'gre', 'nf_conntrack', 'nf_defrag_ipv4', 'nf_defrag_ipv6', os.path.join(OVS_DIR_VANILLA, 'datapath/linux/openvswitch.ko')] - # Bridge name to be used by VSWTICH VSWITCH_BRIDGE_NAME = 'br0' @@ -114,12 +156,6 @@ VSWITCH_AFFINITIZATION_ON = 1 VSWITCH_FLOW_TIMEOUT = '30000' -# list of tuples of format (path, module_name), which will be inserted -# using 'insmod' on system init - -# for OVS modules the path is in reference to the OVS directory. -OVS_MODULES = [] - # log file for ovs-vswitchd LOG_FILE_VSWITCHD = 'vswitchd.log' |