From c293eae53515f7b94ac5a71b329a9a9655bd8c09 Mon Sep 17 00:00:00 2001 From: Peter Mikus Date: Wed, 3 Jan 2018 13:20:04 +0100 Subject: [PATCH] Update DPDK to v17.11 Change-Id: Ib6db506d2691369ac7371a6a678c9dbc04a269d4 Signed-off-by: Peter Mikus --- .../vpp_performance_tests/test_environment.rst | 2 +- resources/libraries/python/DPDK/L3fwdTest.py | 64 +++++++++++++--------- tests/dpdk/dpdk_scripts/cleanup_dpdk.sh | 2 +- tests/dpdk/dpdk_scripts/init_dpdk.sh | 2 +- tests/dpdk/dpdk_scripts/install_dpdk.sh | 2 +- tests/dpdk/dpdk_scripts/run_l2fwd.sh | 2 +- tests/dpdk/dpdk_scripts/run_l3fwd.sh | 2 +- 7 files changed, 44 insertions(+), 32 deletions(-) diff --git a/docs/report/vpp_performance_tests/test_environment.rst b/docs/report/vpp_performance_tests/test_environment.rst index 7b2f7c4638..48d45e587b 100644 --- a/docs/report/vpp_performance_tests/test_environment.rst +++ b/docs/report/vpp_performance_tests/test_environment.rst @@ -2140,7 +2140,7 @@ TG Configuration - TRex **DPDK version** -DPDK v17.08 +DPDK v17.11 **TG Build Script used** diff --git a/resources/libraries/python/DPDK/L3fwdTest.py b/resources/libraries/python/DPDK/L3fwdTest.py index f52a871a7d..d26267fba1 100644 --- a/resources/libraries/python/DPDK/L3fwdTest.py +++ b/resources/libraries/python/DPDK/L3fwdTest.py @@ -11,13 +11,10 @@ # See the License for the specific language governing permissions and # limitations under the License. - """ This module exists to provide the l3fwd test for DPDK on topology nodes. """ -from robot.api import logger - from resources.libraries.python.ssh import SSH from resources.libraries.python.constants import Constants as con from resources.libraries.python.topology import Topology @@ -49,24 +46,8 @@ class L3fwdTest(object): :type jumbo_frames: str :return: none """ - - if_key0 = dut_if1 - if_key1 = dut_if2 - if_pci0 = Topology.get_interface_pci_addr(dut_node, if_key0) - if_pci1 = Topology.get_interface_pci_addr(dut_node, if_key1) - - # detect which is the port 0 - if min(if_pci0, if_pci1) != if_pci0: - if_key0, if_key1 = if_key1, if_key0 - if_pci0, if_pci1 = if_pci1, if_pci0 - - adj_node0, adj_if_key0 = Topology.get_adjacent_node_and_interface( \ - nodes_info, dut_node, if_key0) - adj_node1, adj_if_key1 = Topology.get_adjacent_node_and_interface( \ - nodes_info, dut_node, if_key1) - - adj_mac0 = Topology.get_interface_mac(adj_node0, adj_if_key0) - adj_mac1 = Topology.get_interface_mac(adj_node1, adj_if_key1) + adj_mac0, adj_mac1 = L3fwdTest.get_adj_mac(nodes_info, dut_node, + dut_if1, dut_if2) list_cores = lcores_list.split(',') @@ -86,18 +67,49 @@ class L3fwdTest(object): port_config += temp_str index = index + 1 - port_config_param = port_config.rstrip(',') - ssh = SSH() ssh.connect(dut_node) cmd = 'cd {0}/tests/dpdk/dpdk_scripts/ && ./run_l3fwd.sh ' \ '"{1}" "{2}" {3} {4} {5}'.format(con.REMOTE_FW_DIR, lcores_list, \ - port_config_param, adj_mac0, adj_mac1, jumbo_frames) + port_config.rstrip(','), adj_mac0, adj_mac1, jumbo_frames) - (ret_code, _, stderr) = ssh.exec_command(cmd, timeout=600) + (ret_code, _, _) = ssh.exec_command(cmd, timeout=600) if ret_code != 0: - logger.error('Execute the l3fwd error: {0}'.format(stderr)) raise Exception('Failed to execute l3fwd test at node {0}' .format(dut_node['host'])) + @staticmethod + def get_adj_mac(nodes_info, dut_node, dut_if1, dut_if2): + """ + Get adjacency MAC addresses of the DUT node. + + :param nodes_info: All the nodes info in the topology file. + :param dut_node: Will execute the l3fwd on this node + :param dut_if1: The test link interface 1. + :param dut_if2: The test link interface 2. + :type nodes_info: dict + :type dut_node: dict + :type dut_if1: str + :type dut_if2: str + :returns: Returns MAC addresses of adjacency DUT nodes. + :rtype: str + """ + if_key0 = dut_if1 + if_key1 = dut_if2 + if_pci0 = Topology.get_interface_pci_addr(dut_node, if_key0) + if_pci1 = Topology.get_interface_pci_addr(dut_node, if_key1) + + # detect which is the port 0 + if min(if_pci0, if_pci1) != if_pci0: + if_key0, if_key1 = if_key1, if_key0 + + adj_node0, adj_if_key0 = Topology.get_adjacent_node_and_interface( \ + nodes_info, dut_node, if_key0) + adj_node1, adj_if_key1 = Topology.get_adjacent_node_and_interface( \ + nodes_info, dut_node, if_key1) + + adj_mac0 = Topology.get_interface_mac(adj_node0, adj_if_key0) + adj_mac1 = Topology.get_interface_mac(adj_node1, adj_if_key1) + + return adj_mac0, adj_mac1 diff --git a/tests/dpdk/dpdk_scripts/cleanup_dpdk.sh b/tests/dpdk/dpdk_scripts/cleanup_dpdk.sh index e1e0ef5331..c3b023f52f 100755 --- a/tests/dpdk/dpdk_scripts/cleanup_dpdk.sh +++ b/tests/dpdk/dpdk_scripts/cleanup_dpdk.sh @@ -3,7 +3,7 @@ set -x # Setting variables -DPDK_VERSION=dpdk-17.08 +DPDK_VERSION=dpdk-17.11 ROOTDIR=/tmp/openvpp-testing TESTPMDLOG=screenlog.0 PWDDIR=$(pwd) diff --git a/tests/dpdk/dpdk_scripts/init_dpdk.sh b/tests/dpdk/dpdk_scripts/init_dpdk.sh index d8432d8e52..09a96283d1 100755 --- a/tests/dpdk/dpdk_scripts/init_dpdk.sh +++ b/tests/dpdk/dpdk_scripts/init_dpdk.sh @@ -3,7 +3,7 @@ set -x # Setting variables -DPDK_VERSION=dpdk-17.08 +DPDK_VERSION=dpdk-17.11 ROOTDIR=/tmp/openvpp-testing PWDDIR=$(pwd) cd ${ROOTDIR}/${DPDK_VERSION}/ diff --git a/tests/dpdk/dpdk_scripts/install_dpdk.sh b/tests/dpdk/dpdk_scripts/install_dpdk.sh index 2b50c67dac..6a7c11d8c1 100755 --- a/tests/dpdk/dpdk_scripts/install_dpdk.sh +++ b/tests/dpdk/dpdk_scripts/install_dpdk.sh @@ -3,7 +3,7 @@ set -x # Setting variables -DPDK_VERSION=dpdk-17.08 +DPDK_VERSION=dpdk-17.11 DPDK_DIR=${DPDK_VERSION} DPDK_PACKAGE=${DPDK_DIR}.tar.xz ROOTDIR=/tmp/openvpp-testing diff --git a/tests/dpdk/dpdk_scripts/run_l2fwd.sh b/tests/dpdk/dpdk_scripts/run_l2fwd.sh index ec5482704e..bbd69b6dec 100755 --- a/tests/dpdk/dpdk_scripts/run_l2fwd.sh +++ b/tests/dpdk/dpdk_scripts/run_l2fwd.sh @@ -3,7 +3,7 @@ set -x # Setting variables -DPDK_VERSION=dpdk-17.08 +DPDK_VERSION=dpdk-17.11 ROOTDIR=/tmp/openvpp-testing TESTPMDLOG=screenlog.0 PWDDIR=$(pwd) diff --git a/tests/dpdk/dpdk_scripts/run_l3fwd.sh b/tests/dpdk/dpdk_scripts/run_l3fwd.sh index ecc8eb6991..1a5adf196e 100755 --- a/tests/dpdk/dpdk_scripts/run_l3fwd.sh +++ b/tests/dpdk/dpdk_scripts/run_l3fwd.sh @@ -3,7 +3,7 @@ set -x # Setting variables -DPDK_VERSION=dpdk-17.08 +DPDK_VERSION=dpdk-17.11 ROOTDIR=/tmp/openvpp-testing L3FWDLOG=screenlog.0 PWDDIR=$(pwd) -- 2.16.6