aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLukasz Pawlik <lukaszx.pawlik@intel.com>2019-10-04 13:04:40 +0100
committerEmma Finn <emma.finn@intel.com>2019-10-29 11:04:31 +0000
commit755894494dc58e093d7376bf41f15dcbbdb5e53b (patch)
treeeb8e589b4ef3519c39d420b6d367248472b37bf6
parent115ea9be50aee7db38d92399bc2d46a60e1d7e2d (diff)
integration: fix ovs/dpdk with DPDK >= 18.02
In DPDK >= 18.02 disable-hw-vlan testpmd command line was changed. Parameter disable-hw-vlan is default and user has to explicitly enable it. This patch fix testpmd command line parameters. Also in DPDK >= 18.05 igb_uio kernel module was moved to different directory. Compilation of kernel module only is broken. This patch fix this. Now whole DPDK project is build. Change-Id: I6c8c44979192201c42e6a71b55c37a50fa64fd96 Signed-off-by: Lukasz Pawlik <lukaszx.pawlik@intel.com>
-rw-r--r--conf/04_vnf.conf3
-rw-r--r--conf/integration/01b_dpdk_regression_tests.conf4
-rw-r--r--vnfs/qemu/qemu.py13
3 files changed, 12 insertions, 8 deletions
diff --git a/conf/04_vnf.conf b/conf/04_vnf.conf
index 234f11b6..cf44a8ec 100644
--- a/conf/04_vnf.conf
+++ b/conf/04_vnf.conf
@@ -208,8 +208,7 @@ GUEST_BRIDGE_IP = ['#IP(1.1.1.5)/16']
# Note: Testpmd must be executed in interactive mode. It means, that
# VSPERF won't work correctly if '-i' will be removed.
GUEST_TESTPMD_PARAMS = ['-c 0x3 -n 4 --socket-mem 512 -- '
- '--burst=64 -i --txqflags=0xf00 '
- '--disable-hw-vlan']
+ '--burst=64 -i ']
# packet forwarding mode supported by testpmd; Please see DPDK documentation
# for comprehensive list of modes supported by your version.
diff --git a/conf/integration/01b_dpdk_regression_tests.conf b/conf/integration/01b_dpdk_regression_tests.conf
index a637e3e2..c43f036f 100644
--- a/conf/integration/01b_dpdk_regression_tests.conf
+++ b/conf/integration/01b_dpdk_regression_tests.conf
@@ -587,11 +587,11 @@ INTEGRATION_TESTS = INTEGRATION_TESTS + [
# there must be separate CPU for each of RX/TX queues
"GUEST_SMP" : ['5'],
"GUEST_TESTPMD_PARAMS" : ['-c 0x1F -n 4 --socket-mem 512 -- '
- '--burst=64 -i --txqflags=0xf00 --nb-cores=4 '
+ '--burst=64 -i --nb-cores=4 '
# map queue stats to separate regs to verify MQ functionality
'--rx-queue-stats-mapping=\(0,0,0\),\(0,1,1\),\(1,0,2\),\(1,1,3\) '
'--tx-queue-stats-mapping=\(0,0,4\),\(0,1,5\),\(1,0,6\),\(1,1,7\) '
- '--disable-hw-vlan --rxq=2 --txq=2'],
+ '--rxq=2 --txq=2'],
"TRAFFICGEN_DURATION" : 5,
"TRAFFIC" : {
"traffic_type" : "rfc2544_continuous",
diff --git a/vnfs/qemu/qemu.py b/vnfs/qemu/qemu.py
index 857793f8..a2c8d4be 100644
--- a/vnfs/qemu/qemu.py
+++ b/vnfs/qemu/qemu.py
@@ -503,11 +503,16 @@ class IVnfQemu(IVnf):
pci_slots)
elif driver == 'igb_uio_from_src':
# build and insert igb_uio and rebind interfaces to it
- self.execute_and_wait('make RTE_OUTPUT=$RTE_SDK/$RTE_TARGET -C '
- '$RTE_SDK/lib/librte_eal/linuxapp/igb_uio')
+ # from DPDK 18.05 Linux kernel driver changed location
+ # also it is not possible to compile driver without
+ # passing EXTRA_CFLAGS
+ self.execute_and_wait("make RTE_OUTPUT=$RTE_SDK/{0} \
+ EXTRA_CFLAGS=\"-I$RTE_SDK/{1}/include\" \
+ -C $RTE_SDK/kernel/linux/igb_uio"\
+ .format(S.getValue('RTE_TARGET'), S.getValue('RTE_TARGET')))
self.execute_and_wait('modprobe uio')
- self.execute_and_wait('insmod %s/kmod/igb_uio.ko' %
- S.getValue('RTE_TARGET'))
+ self.execute_and_wait('insmod {}/kmod/igb_uio.ko'\
+ .format(S.getValue('RTE_TARGET')))
self.execute_and_wait('./*tools/dpdk*bind.py -b igb_uio ' + pci_slots)
else:
self._logger.error(