From: Yan Xia <yanx.xia@intel.com>
To: dts@dpdk.org
Cc: Yan Xia <yanx.xia@intel.com>
Subject: [dts][PATCH V3 3/3] tests/fortville_rss_granularity_config: delete the suite
Date: Thu, 2 Dec 2021 11:14:53 +0000 [thread overview]
Message-ID: <20211202111453.146572-3-yanx.xia@intel.com> (raw)
In-Reply-To: <20211202111453.146572-1-yanx.xia@intel.com>
delete fortville_rss_granularity_config testsuite
dpdk commit id: 81db321da ethdev: remove legacy HASH filter type support
Signed-off-by: Yan Xia <yanx.xia@intel.com>
---
| 563 ------------------
1 file changed, 563 deletions(-)
delete mode 100644 tests/TestSuite_fortville_rss_granularity_config.py
diff --git a/tests/TestSuite_fortville_rss_granularity_config.py b/tests/TestSuite_fortville_rss_granularity_config.py
deleted file mode 100644
index b397cf37..00000000
--- a/tests/TestSuite_fortville_rss_granularity_config.py
+++ /dev/null
@@ -1,563 +0,0 @@
-# BSD LICENSE
-#
-# Copyright(c) 2010-2014 Intel Corporation. All rights reserved.
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions
-# are met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# * Redistributions in binary form must reproduce the above copyright
-# notice, this list of conditions and the following disclaimer in
-# the documentation and/or other materials provided with the
-# distribution.
-# * Neither the name of Intel Corporation nor the names of its
-# contributors may be used to endorse or promote products derived
-# from this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-"""
-DPDK Test suite.
-
-Test DPDK2.3 feature:
-1.Fortville support granularity configuration of RSS.
-By default Fortville uses hash input set preloaded from NVM image which includes all fields
-- IPv4/v6+TCP/UDP port. Potential problem for this is global configuration per device and can
-affect all ports. It is required that hash input set can be configurable, such as using IPv4
-only or IPv6 only or IPv4/v6+TCP/UDP.
-
-2.Fortville support 32-bit GRE keys.
-By default Fortville extracts only 24 bits of GRE key to FieldVector (NVGRE use case) but
-for Telco use cases full 32-bit GRE key is needed. It is required that both 24-bit and 32-bit
-keys for GRE should be supported. the test plan is to test the API to switch between 24-bit and
-32-bit keys
-
-Support 4*10G, 1*40G and 2*40G NICs.
-"""
-import random
-import re
-import time
-
-import framework.dut as dut
-import framework.utils as utils
-from framework.pmd_output import PmdOutput
-
-testQueues = [16]
-reta_entries = []
-reta_lines = []
-
-# Use scapy to send packets with different source and dest ip.
-# and collect the hash result of five tuple and the queue id.
-from framework.test_case import TestCase
-
-#
-#
-# Test class.
-#
-
-
-class TestFortvilleRssGranularityConfig(TestCase):
- #
- #
- # Utility methods and other non-test code.
- #
-
- def set_up_all(self):
- """
- Run at the start of each test suite.
- """
-
- self.verify(self.nic in ["fortville_eagle", "fortville_spirit",
- "fortville_spirit_single", "fortville_25g", "carlsville"],
- "NIC Unsupported: " + str(self.nic))
- ports = self.dut.get_ports(self.nic)
- self.verify(len(ports) >= 1, "Not enough ports available")
- dutPorts = self.dut.get_ports(self.nic)
- localPort = self.tester.get_local_port(dutPorts[0])
- self.itf = self.tester.get_interface(localPort)
- self.pmdout = PmdOutput(self.dut)
-
- def set_up(self):
- """
- Run before each test case.
- """
- global reta_lines
- reta_lines = []
-
- def send_packet(self, itf, tran_type):
- """
- Sends packets.
- """
- global reta_lines
- self.tester.scapy_foreground()
- self.dut.send_expect("start", "testpmd>")
- mac = self.dut.get_mac_address(0)
-
- # send packet with different source and dest ip
- if tran_type == "ipv4-other":
- packet = r'sendp([Ether(dst="%s", src=get_if_hwaddr("%s"))/IP(src="192.168.0.1", dst="192.168.0.2", proto=47)/GRE(key_present=1,proto=2048,key=67108863)/IP()], iface="%s")' % (
- mac, itf, itf)
- self.tester.scapy_append(packet)
- self.tester.scapy_execute()
- time.sleep(.5)
- elif tran_type == "ipv4-tcp":
- packet = r'sendp([Ether(dst="%s", src=get_if_hwaddr("%s"))/IP(src="192.168.0.1", dst="192.168.0.2")/TCP(sport=1024,dport=1025)], iface="%s")' % (
- mac, itf, itf)
- self.tester.scapy_append(packet)
- self.tester.scapy_execute()
- time.sleep(.5)
- elif tran_type == "ipv4-udp":
- packet = r'sendp([Ether(dst="%s", src=get_if_hwaddr("%s"))/IP(src="192.168.0.1", dst="192.168.0.2")/UDP(sport=1024,dport=1025)], iface="%s")' % (
- mac, itf, itf)
- self.tester.scapy_append(packet)
- self.tester.scapy_execute()
- time.sleep(.5)
- elif tran_type == "l2_payload":
- packet = r'sendp([Ether(dst="%s", src=get_if_hwaddr("%s"))/Dot1Q(id=0x8100,vlan=1)/Dot1Q(id=0x8100,vlan=2)], iface="%s")' % (
- mac, itf, itf)
- self.tester.scapy_append(packet)
- self.tester.scapy_execute()
- time.sleep(.5)
- elif tran_type == "ipv6-tcp":
- packet = r'sendp([Ether(dst="%s", src=get_if_hwaddr("%s"))/IPv6(src="3ffe:2501:200:1fff::1", dst="3ffe:2501:200:3::2")/TCP(sport=1024,dport=1025)], iface="%s")' % (
- mac, itf, itf)
- self.tester.scapy_append(packet)
- self.tester.scapy_execute()
- time.sleep(.5)
- elif tran_type == "ipv6-udp":
- packet = r'sendp([Ether(dst="%s", src=get_if_hwaddr("%s"))/IPv6(src="3ffe:2501:200:1fff::1", dst="3ffe:2501:200:3::2")/UDP(sport=1024,dport=1025)], iface="%s")' % (
- mac, itf, itf)
- self.tester.scapy_append(packet)
- self.tester.scapy_execute()
- time.sleep(.5)
- else:
- print("\ntran_type error!\n")
-
- out = self.dut.get_session_output(timeout=1)
- self.dut.send_expect("stop", "testpmd>")
- lines = out.split("\r\n")
- reta_line = {}
- # collect the hash result and the queue id
- for line in lines:
- line = line.strip()
- if len(line) != 0 and line.strip().startswith("port "):
- reta_line = {}
- rexp = r"port (\d)/queue (\d{1,2}): received (\d) packets"
- m = re.match(rexp, line.strip())
- if m:
- reta_line["port"] = m.group(1)
- reta_line["queue"] = m.group(2)
-
- elif len(line) != 0 and line.startswith(("src=",)):
- for item in line.split("-"):
- item = item.strip()
- if(item.startswith("RSS hash")):
- name, value = item.split("=", 1)
-
- reta_line[name.strip()] = value.strip()
- reta_lines.append(reta_line)
-
- self.append_result_table()
-
- def append_result_table(self):
- """
- Append the hash value and queue id into table.
- """
-
- global reta_lines
-
- # append the the hash value and queue id into table
- self.result_table_create(
- ['packet index', 'hash value', 'hash index', 'queue id'])
- i = 0
-
- for tmp_reta_line in reta_lines:
-
- # compute the hash result of five tuple into the 7 LSBs value.
- hash_index = int(tmp_reta_line["RSS hash"], 16)
- self.result_table_add(
- [i, tmp_reta_line["RSS hash"], hash_index, tmp_reta_line["queue"]])
- i = i + 1
-
- def test_ipv4_tcp(self):
- """
- Test with flow type ipv4-tcp.
- """
- flag = 1
-
- # test with different rss queues
- for queue in testQueues:
- self.pmdout.start_testpmd(
- "Default", " --portmask=0x1 --rxq=%d --txq=%d" % (queue, queue))
- self.dut.send_expect("set verbose 8", "testpmd> ")
- self.dut.send_expect("set fwd rxonly", "testpmd> ")
-
- self.dut.send_expect("port stop all", "testpmd> ")
- self.dut.send_expect(
- "set_hash_global_config 0 toeplitz ipv4-tcp enable", "testpmd> ")
- self.dut.send_expect("port start all", "testpmd> ")
- res = self.pmdout.wait_link_status_up("all")
- self.verify(res is True, "link is donw")
-
- self.dut.send_expect(
- "port config all rss tcp", "testpmd> ")
- self.send_packet(self.itf, "ipv4-tcp")
-
- # set hash input set to "none" by testpmd on dut
- self.dut.send_expect("set_hash_input_set 0 ipv4-tcp none select", "testpmd> ")
- self.send_packet(self.itf, "ipv4-tcp")
-
- # set hash input set by testpmd on dut, enable src-ipv4 & dst-ipv4
- self.dut.send_expect("set_hash_input_set 0 ipv4-tcp src-ipv4 add", "testpmd> ")
- self.dut.send_expect("set_hash_input_set 0 ipv4-tcp dst-ipv4 add", "testpmd> ")
- self.send_packet(self.itf, "ipv4-tcp")
-
- # set hash input set by testpmd on dut, enable src-ipv4, dst-ipv4, tcp-src-port, tcp-dst-port
- self.dut.send_expect("set_hash_input_set 0 ipv4-tcp tcp-src-port add", "testpmd> ")
- self.dut.send_expect("set_hash_input_set 0 ipv4-tcp tcp-dst-port add", "testpmd> ")
- self.send_packet(self.itf, "ipv4-tcp")
-
- # set hash input set by testpmd on dut, enable tcp-src-port, tcp-dst-port
- self.dut.send_expect("set_hash_input_set 0 ipv4-tcp none select", "testpmd> ")
- self.dut.send_expect("set_hash_input_set 0 ipv4-tcp tcp-src-port add", "testpmd> ")
- self.dut.send_expect("set_hash_input_set 0 ipv4-tcp tcp-dst-port add", "testpmd> ")
- self.send_packet(self.itf, "ipv4-tcp")
-
- self.dut.send_expect("quit", "# ", 30)
-
- self.result_table_print()
- result_rows = self.result_table_getrows()
- self.verify(len(result_rows) > 1, "There is no data in the table, testcase failed!")
-
- if ((result_rows[1][1] == result_rows[2][1]) or (result_rows[1][3] == result_rows[2][3])):
- flag = 0
- self.verify(flag, "The two hash values are the same, rss_granularity_config failed!")
- elif ((result_rows[1][1] == result_rows[3][1]) or (result_rows[1][3] == result_rows[3][3])):
- flag = 0
- self.verify(flag, "The two hash values are the same, rss_granularity_config failed!")
- elif ((result_rows[2][1] == result_rows[3][1]) or (result_rows[2][3] == result_rows[3][3])):
- flag = 0
- self.verify(flag, "The two hash values are the same, rss_granularity_config failed!")
- elif ((result_rows[1][1] == result_rows[5][1]) or (result_rows[1][3] == result_rows[5][3])):
- flag = 0
- self.verify(flag, "The two hash values are the same, rss_granularity_config failed!")
- elif ((result_rows[2][1] == result_rows[5][1]) or (result_rows[2][3] == result_rows[5][3])):
- flag = 0
- self.verify(flag, "The two hash values are the same, rss_granularity_config failed!")
- elif ((result_rows[3][1] == result_rows[5][1]) or (result_rows[3][3] == result_rows[5][3])):
- flag = 0
- self.verify(flag, "The two hash values are the same, rss_granularity_config failed!")
- elif ((result_rows[1][1] != result_rows[4][1]) or (result_rows[1][3] != result_rows[4][3])):
- flag = 0
- self.verify(flag, "The two hash values are different, rss_granularity_config failed!")
-
- def test_ipv4_udp(self):
- """
- Test with flow type ipv4-udp.
- """
- flag = 1
-
- # test with different rss queues
- for queue in testQueues:
- self.pmdout.start_testpmd(
- "Default", " --portmask=0x1 --rxq=%d --txq=%d" % (queue, queue))
-
- self.dut.send_expect("set verbose 8", "testpmd> ")
- self.dut.send_expect("set fwd rxonly", "testpmd> ")
-
- self.dut.send_expect("port stop all", "testpmd> ")
- self.dut.send_expect(
- "set_hash_global_config 0 toeplitz ipv4-udp enable", "testpmd> ")
- self.dut.send_expect("port start all", "testpmd> ")
- res = self.pmdout.wait_link_status_up("all")
- self.verify(res is True, "link is donw")
-
- self.dut.send_expect(
- "port config all rss udp", "testpmd> ")
- self.send_packet(self.itf, "ipv4-udp")
-
- # set hash input set to "none" by testpmd on dut
- self.dut.send_expect("set_hash_input_set 0 ipv4-udp none select", "testpmd> ")
- self.send_packet(self.itf, "ipv4-udp")
-
- # set hash input set by testpmd on dut, enable src-ipv4 & dst-ipv4
- self.dut.send_expect("set_hash_input_set 0 ipv4-udp src-ipv4 add", "testpmd> ")
- self.dut.send_expect("set_hash_input_set 0 ipv4-udp dst-ipv4 add", "testpmd> ")
- self.send_packet(self.itf, "ipv4-udp")
-
- # set hash input set by testpmd on dut, enable src-ipv4, dst-ipv4, udp-src-port, udp-dst-port
- self.dut.send_expect("set_hash_input_set 0 ipv4-udp udp-src-port add", "testpmd> ")
- self.dut.send_expect("set_hash_input_set 0 ipv4-udp udp-dst-port add", "testpmd> ")
- self.send_packet(self.itf, "ipv4-udp")
-
- # set hash input set by testpmd on dut, enable udp-src-port, udp-dst-port
- self.dut.send_expect("set_hash_input_set 0 ipv4-udp none select", "testpmd> ")
- self.dut.send_expect("set_hash_input_set 0 ipv4-udp udp-src-port add", "testpmd> ")
- self.dut.send_expect("set_hash_input_set 0 ipv4-udp udp-dst-port add", "testpmd> ")
- self.send_packet(self.itf, "ipv4-udp")
-
- self.dut.send_expect("quit", "# ", 30)
-
- self.result_table_print()
- result_rows = self.result_table_getrows()
- self.verify(len(result_rows) > 1, "There is no data in the table, testcase failed!")
-
- # check the results
- if ((result_rows[1][1] == result_rows[2][1])or(result_rows[1][3] == result_rows[2][3])):
- flag = 0
- self.verify(flag, "The two hash values are the same, rss_granularity_config failed!")
- elif ((result_rows[1][1] == result_rows[3][1])or(result_rows[1][3] == result_rows[3][3])):
- flag = 0
- self.verify(flag, "The two hash values are the same, rss_granularity_config failed!")
- elif ((result_rows[2][1] == result_rows[3][1])or(result_rows[2][3] == result_rows[3][3])):
- flag = 0
- self.verify(flag, "The two hash values are the same, rss_granularity_config failed!")
- elif ((result_rows[1][1] == result_rows[5][1])or(result_rows[1][3] == result_rows[5][3])):
- flag = 0
- self.verify(flag, "The two hash values are the same, rss_granularity_config failed!")
- elif ((result_rows[2][1] == result_rows[5][1])or(result_rows[2][3] == result_rows[5][3])):
- flag = 0
- self.verify(flag, "The two hash values are the same, rss_granularity_config failed!")
- elif ((result_rows[3][1] == result_rows[5][1])or(result_rows[3][3] == result_rows[5][3])):
- flag = 0
- self.verify(flag, "The two hash values are the same, rss_granularity_config failed!")
- elif ((result_rows[1][1] != result_rows[4][1])or(result_rows[1][3] != result_rows[4][3])):
- flag = 0
- self.verify(flag, "The two hash values are different, rss_granularity_config failed!")
-
- def test_ipv6_tcp(self):
- """
- Test with flow type ipv6-tcp.
- """
- flag = 1
-
- # test with different rss queues
- for queue in testQueues:
- self.pmdout.start_testpmd(
- "Default", " --portmask=0x1 --rxq=%d --txq=%d" % (queue, queue))
-
- self.dut.send_expect("set verbose 8", "testpmd> ")
- self.dut.send_expect("set fwd rxonly", "testpmd> ")
-
- self.dut.send_expect("port stop all", "testpmd> ")
- self.dut.send_expect(
- "set_hash_global_config 0 toeplitz ipv6-tcp enable", "testpmd> ")
- self.dut.send_expect("port start all", "testpmd> ")
- res = self.pmdout.wait_link_status_up("all")
- self.verify(res is True, "link is donw")
-
- self.dut.send_expect(
- "port config all rss tcp", "testpmd> ")
- self.send_packet(self.itf, "ipv6-tcp")
-
- # set hash input set to "none" by testpmd on dut
- self.dut.send_expect("set_hash_input_set 0 ipv6-tcp none select", "testpmd> ")
- self.send_packet(self.itf, "ipv6-tcp")
-
- # set hash input set by testpmd on dut, enable src-ipv6 & dst-ipv6
- self.dut.send_expect("set_hash_input_set 0 ipv6-tcp src-ipv6 add", "testpmd> ")
- self.dut.send_expect("set_hash_input_set 0 ipv6-tcp dst-ipv6 add", "testpmd> ")
- self.send_packet(self.itf, "ipv6-tcp")
-
- # set hash input set by testpmd on dut, enable src-ipv6, dst-ipv6, tcp-src-port, tcp-dst-port
- self.dut.send_expect("set_hash_input_set 0 ipv6-tcp tcp-src-port add", "testpmd> ")
- self.dut.send_expect("set_hash_input_set 0 ipv6-tcp tcp-dst-port add", "testpmd> ")
- self.send_packet(self.itf, "ipv6-tcp")
-
- # set hash input set by testpmd on dut, enable tcp-src-port, tcp-dst-port
- self.dut.send_expect("set_hash_input_set 0 ipv6-tcp none select", "testpmd> ")
- self.dut.send_expect("set_hash_input_set 0 ipv6-tcp tcp-src-port add", "testpmd> ")
- self.dut.send_expect("set_hash_input_set 0 ipv6-tcp tcp-dst-port add", "testpmd> ")
- self.send_packet(self.itf, "ipv6-tcp")
-
- self.dut.send_expect("quit", "# ", 30)
-
- self.result_table_print()
- result_rows = self.result_table_getrows()
- self.verify(len(result_rows) > 1, "There is no data in the table, testcase failed!")
-
- # check the results
- if ((result_rows[1][1] == result_rows[2][1])or(result_rows[1][3] == result_rows[2][3])):
- flag = 0
- self.verify(flag, "The two hash values are the same, rss_granularity_config failed!")
- elif ((result_rows[1][1] == result_rows[3][1])or(result_rows[1][3] == result_rows[3][3])):
- flag = 0
- self.verify(flag, "The two hash values are the same, rss_granularity_config failed!")
- elif ((result_rows[2][1] == result_rows[3][1])or(result_rows[2][3] == result_rows[3][3])):
- flag = 0
- self.verify(flag, "The two hash values are the same, rss_granularity_config failed!")
- elif ((result_rows[1][1] == result_rows[5][1])or(result_rows[1][3] == result_rows[5][3])):
- flag = 0
- self.verify(flag, "The two hash values are the same, rss_granularity_config failed!")
- elif ((result_rows[2][1] == result_rows[5][1])or(result_rows[2][3] == result_rows[5][3])):
- flag = 0
- self.verify(flag, "The two hash values are the same, rss_granularity_config failed!")
- elif ((result_rows[3][1] == result_rows[5][1])and(result_rows[3][3] == result_rows[5][3])):
- flag = 0
- self.verify(flag, "The two hash values are the same, rss_granularity_config failed!")
- elif ((result_rows[1][1] != result_rows[4][1])or(result_rows[1][3] != result_rows[4][3])):
- flag = 0
- self.verify(flag, "The two hash values are different, rss_granularity_config failed!")
-
- def test_ipv6_udp(self):
- """
- Test with flow type ipv6-udp.
- """
- flag = 1
-
- # test with different rss queues
- for queue in testQueues:
- self.pmdout.start_testpmd(
- "Default", " --portmask=0x1 --rxq=%d --txq=%d" % (queue, queue))
-
- self.dut.send_expect("set verbose 8", "testpmd> ")
- self.dut.send_expect("set fwd rxonly", "testpmd> ")
-
- self.dut.send_expect("port stop all", "testpmd> ")
- self.dut.send_expect(
- "set_hash_global_config 0 toeplitz ipv6-udp enable", "testpmd> ")
- self.dut.send_expect("port start all", "testpmd> ")
- res = self.pmdout.wait_link_status_up("all")
- self.verify(res is True, "link is donw")
-
- self.dut.send_expect(
- "port config all rss udp", "testpmd> ")
- self.send_packet(self.itf, "ipv6-udp")
-
- # set hash input set to "none" by testpmd on dut
- self.dut.send_expect("set_hash_input_set 0 ipv6-udp none select", "testpmd> ")
- self.send_packet(self.itf, "ipv6-udp")
-
- # set hash input set by testpmd on dut, enable src-ipv6 & dst-ipv6
- self.dut.send_expect("set_hash_input_set 0 ipv6-udp src-ipv6 add", "testpmd> ")
- self.dut.send_expect("set_hash_input_set 0 ipv6-udp dst-ipv6 add", "testpmd> ")
- self.send_packet(self.itf, "ipv6-udp")
-
- # set hash input set by testpmd on dut, enable src-ipv6, dst-ipv6, udp-src-port, udp-dst-port
- self.dut.send_expect("set_hash_input_set 0 ipv6-udp udp-src-port add", "testpmd> ")
- self.dut.send_expect("set_hash_input_set 0 ipv6-udp udp-dst-port add", "testpmd> ")
- self.send_packet(self.itf, "ipv6-udp")
-
- # set hash input set by testpmd on dut, enable udp-src-port, udp-dst-port
- self.dut.send_expect("set_hash_input_set 0 ipv6-udp none select", "testpmd> ")
- self.dut.send_expect("set_hash_input_set 0 ipv6-udp udp-src-port add", "testpmd> ")
- self.dut.send_expect("set_hash_input_set 0 ipv6-udp udp-dst-port add", "testpmd> ")
- self.send_packet(self.itf, "ipv6-udp")
-
- self.dut.send_expect("quit", "# ", 30)
-
- self.result_table_print()
- result_rows = self.result_table_getrows()
- self.verify(len(result_rows) > 1, "There is no data in the table, testcase failed!")
-
- # check the results
- if ((result_rows[1][1] == result_rows[2][1])or(result_rows[1][3] == result_rows[2][3])):
- flag = 0
- self.verify(flag, "The two hash values are the same, rss_granularity_config failed!")
- elif ((result_rows[1][1] == result_rows[3][1])or(result_rows[1][3] == result_rows[3][3])):
- flag = 0
- self.verify(flag, "The two hash values are the same, rss_granularity_config failed!")
- elif ((result_rows[2][1] == result_rows[3][1])or(result_rows[2][3] == result_rows[3][3])):
- flag = 0
- self.verify(flag, "The two hash values are the same, rss_granularity_config failed!")
- elif ((result_rows[1][1] == result_rows[5][1])or(result_rows[1][3] == result_rows[5][3])):
- flag = 0
- self.verify(flag, "The two hash values are the same, rss_granularity_config failed!")
- elif ((result_rows[2][1] == result_rows[5][1])or(result_rows[2][3] == result_rows[5][3])):
- flag = 0
- self.verify(flag, "The two hash values are the same, rss_granularity_config failed!")
- elif ((result_rows[3][1] == result_rows[5][1])and(result_rows[3][3] == result_rows[5][3])):
- flag = 0
- self.verify(flag, "The two hash values are the same, rss_granularity_config failed!")
- elif ((result_rows[1][1] != result_rows[4][1])or(result_rows[1][3] != result_rows[4][3])):
- flag = 0
- self.verify(flag, "The two hash values are different, rss_granularity_config failed!")
-
- def test_GRE_keys(self):
- """
- Test with 32-bit GRE keys and 24-bit GRE keys.
- """
- flag = 1
-
- # test with different rss queues
- for queue in testQueues:
- self.pmdout.start_testpmd(
- "Default", " --portmask=0x1 --rxq=%d --txq=%d" % (queue, queue))
-
- self.dut.send_expect("set verbose 8", "testpmd> ")
- self.dut.send_expect("set fwd rxonly", "testpmd> ")
-
- self.dut.send_expect("port stop all", "testpmd> ")
- self.dut.send_expect(
- "set_hash_global_config 0 toeplitz ipv4-other enable", "testpmd> ")
- self.dut.send_expect("port start all", "testpmd> ")
- res = self.pmdout.wait_link_status_up("all")
- self.verify(res is True, "link is donw")
-
- self.dut.send_expect(
- "port config all rss all", "testpmd> ")
- self.send_packet(self.itf, "ipv4-other")
-
- # set hash input set to "none" by testpmd on dut
- self.dut.send_expect("set_hash_input_set 0 ipv4-other none select", "testpmd> ")
- self.send_packet(self.itf, "ipv4-other")
-
- # set hash input set by testpmd on dut, enable src-ipv4 & dst-ipv4
- self.dut.send_expect("set_hash_input_set 0 ipv4-other src-ipv4 add", "testpmd> ")
- self.dut.send_expect("set_hash_input_set 0 ipv4-other dst-ipv4 add", "testpmd> ")
- self.send_packet(self.itf, "ipv4-other")
-
- # set hash input set by testpmd on dut, enable src-ipv4, dst-ipv4, gre-key-len 3
- self.dut.send_expect("global_config 0 gre-key-len 3", "testpmd> ")
- self.dut.send_expect("set_hash_input_set 0 ipv4-other gre-key add", "testpmd> ")
- self.send_packet(self.itf, "ipv4-other")
-
- # set hash input set by testpmd on dut, enable src-ipv4, dst-ipv4, gre-key-len 4
- self.dut.send_expect("global_config 0 gre-key-len 4", "testpmd> ")
- self.send_packet(self.itf, "ipv4-other")
-
- self.dut.send_expect("quit", "# ", 30)
-
- self.result_table_print()
- result_rows = self.result_table_getrows()
- self.verify(len(result_rows) > 1, "There is no data in the table, testcase failed!")
-
- # check the results
- if ((result_rows[1][1] == result_rows[2][1])or(result_rows[1][3] == result_rows[2][3])):
- flag = 0
- self.verify(flag, "The two hash values are the same, rss_granularity_config failed!")
- elif ((result_rows[1][1] != result_rows[3][1])or(result_rows[1][3] != result_rows[3][3])):
- flag = 0
- self.verify(flag, "The two hash values are different, rss_granularity_config failed!")
- elif ((result_rows[1][1] == result_rows[4][1])or(result_rows[1][3] == result_rows[4][3])):
- flag = 0
- self.verify(flag, "The two hash values are the same, rss_granularity_config failed!")
- elif ((result_rows[4][1] == result_rows[5][1])or(result_rows[4][3] == result_rows[5][3])):
- flag = 0
- self.verify(flag, "The two hash values are the same, rss_granularity_config failed!")
-
- def tear_down(self):
- """
- Run after each test case.
- """
- self.dut.kill_all()
-
- def tear_down_all(self):
- """
- Run after each test suite.
- """
- pass
-
--
2.33.1
next prev parent reply other threads:[~2021-12-02 3:14 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-12-02 11:14 [dts][PATCH V3 1/3] test_plans/fortville_rss_granularity_config: delete the test plan Yan Xia
2021-12-02 11:14 ` [dts][PATCH V3 2/3] test_plans/index: delete fortville_rss_granularity_config Yan Xia
2021-12-02 11:14 ` Yan Xia [this message]
2021-12-06 2:25 ` [dts][PATCH V3 3/3] tests/fortville_rss_granularity_config: delete the suite Peng, Yuan
2021-12-16 10:56 ` Tu, Lijuan
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20211202111453.146572-3-yanx.xia@intel.com \
--to=yanx.xia@intel.com \
--cc=dts@dpdk.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).