From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 807C0A04F3; Thu, 9 Jan 2020 07:01:53 +0100 (CET) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 767161DB90; Thu, 9 Jan 2020 07:01:53 +0100 (CET) Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by dpdk.org (Postfix) with ESMTP id 45D9C1DB7A for ; Thu, 9 Jan 2020 07:01:51 +0100 (CET) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga002.fm.intel.com ([10.253.24.26]) by fmsmga104.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 08 Jan 2020 22:01:50 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.69,412,1571727600"; d="scan'208";a="254482990" Received: from unknown (HELO dpdk-wenjielx-dtspatch135.sh.intel.com) ([10.240.176.135]) by fmsmga002.fm.intel.com with ESMTP; 08 Jan 2020 22:01:50 -0800 From: Haiyang Zhao To: dts@dpdk.org Cc: Haiyang Zhao Date: Thu, 9 Jan 2020 14:05:16 +0800 Message-Id: <1578549916-14350-8-git-send-email-haiyangx.zhao@intel.com> X-Mailer: git-send-email 1.9.3 In-Reply-To: <1578549916-14350-1-git-send-email-haiyangx.zhao@intel.com> References: <1578549916-14350-1-git-send-email-haiyangx.zhao@intel.com> Subject: [dts] [PATCH V1 8/8] test_plans/rteflow_priority_test_plan:fix build warnings and errors X-BeenThere: dts@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: test suite reviews and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dts-bounces@dpdk.org Sender: "dts" Signed-off-by: Haiyang Zhao --- test_plans/rteflow_priority_test_plan.rst | 222 +++++++++++++++--------------- 1 file changed, 111 insertions(+), 111 deletions(-) diff --git a/test_plans/rteflow_priority_test_plan.rst b/test_plans/rteflow_priority_test_plan.rst index 3f1e65b..ff49cdb 100644 --- a/test_plans/rteflow_priority_test_plan.rst +++ b/test_plans/rteflow_priority_test_plan.rst @@ -67,45 +67,45 @@ Test Case: Setting Priority in Non-pipeline Mode Priority is not active in non-pipeline mode. The default value of priority is 0 but it will be ignored. Patterns in this case: - MAC_IPV4 + MAC_IPV4 #. Start the ``testpmd`` application as follows:: - ./x86_64-native-linuxapp-gcc/app/testpmd -c 0xf -n 4 -w 0000:af:00.0 --log-level="ice,7" -- -i --txq=8 --rxq=8 - set fwd rxonly - set verbose 1 + ./x86_64-native-linuxapp-gcc/app/testpmd -c 0xf -n 4 -w 0000:af:00.0 --log-level="ice,7" -- -i --txq=8 --rxq=8 + set fwd rxonly + set verbose 1 #. Create a rule with priority 0, Check the flow can be created but it will map to fdir filter:: - testpmd> flow create 0 priority 0 ingress pattern eth / ipv4 src is 192.168.0.2 dst is 192.168.0.3 tos is 4 / end actions queue index 2 / end - ice_interrupt_handler(): OICR: MDD event - ice_flow_create(): Succeeded to create (1) flow - Flow rule #0 created + testpmd> flow create 0 priority 0 ingress pattern eth / ipv4 src is 192.168.0.2 dst is 192.168.0.3 tos is 4 / end actions queue index 2 / end + ice_interrupt_handler(): OICR: MDD event + ice_flow_create(): Succeeded to create (1) flow + Flow rule #0 created #. Create a rule with priority 1, check the flow can not be created for the vallue of priority is 0 in non-pipeline mode:: - testpmd> flow create 0 priority 1 ingress pattern eth / ipv4 src is 192.168.0.2 dst is 192.168.0.3 tos is 4 / end actions queue index 2 / end - ice_flow_create(): Failed to create flow - Caught error type 4 (priority field): cause: 0x7ffe24e65738, Not support priority.: Invalid argument + testpmd> flow create 0 priority 1 ingress pattern eth / ipv4 src is 192.168.0.2 dst is 192.168.0.3 tos is 4 / end actions queue index 2 / end + ice_flow_create(): Failed to create flow + Caught error type 4 (priority field): cause: 0x7ffe24e65738, Not support priority.: Invalid argument #. Start the ``testpmd`` application as follows:: - ./x86_64-native-linuxapp-gcc/app/testpmd -c 0xf -n 4 -w 0000:af:00.0,pipeline-mode-support=0 --log-level="ice,7" -- -i --txq=8 --rxq=8 - set fwd rxonly - set verbose 1 + ./x86_64-native-linuxapp-gcc/app/testpmd -c 0xf -n 4 -w 0000:af:00.0,pipeline-mode-support=0 --log-level="ice,7" -- -i --txq=8 --rxq=8 + set fwd rxonly + set verbose 1 #. Create a rule with priority 0, Check the flow can be created but it will map to fdir filter:: - testpmd> flow create 0 priority 0 ingress pattern eth / ipv4 src is 192.168.0.2 dst is 192.168.0.3 tos is 4 / end actions queue index 2 / end - ice_interrupt_handler(): OICR: MDD event - ice_flow_create(): Succeeded to create (1) flow - Flow rule #0 created + testpmd> flow create 0 priority 0 ingress pattern eth / ipv4 src is 192.168.0.2 dst is 192.168.0.3 tos is 4 / end actions queue index 2 / end + ice_interrupt_handler(): OICR: MDD event + ice_flow_create(): Succeeded to create (1) flow + Flow rule #0 created #. Create a rule with priority 1, check the flow can not be created for the vallue of priority is 0 in non-pipeline mode:: - - testpmd> flow create 0 priority 1 ingress pattern eth / ipv4 src is 192.168.0.2 dst is 192.168.0.3 tos is 4 / end actions queue index 2 / end - ice_flow_create(): Failed to create flow - Caught error type 4 (priority field): cause: 0x7ffe24e65738, Not support priority.: Invalid argument + + testpmd> flow create 0 priority 1 ingress pattern eth / ipv4 src is 192.168.0.2 dst is 192.168.0.3 tos is 4 / end actions queue index 2 / end + ice_flow_create(): Failed to create flow + Caught error type 4 (priority field): cause: 0x7ffe24e65738, Not support priority.: Invalid argument Test Case: Create Flow Rules with Priority in Pipeline Mode ============================================================ @@ -114,55 +114,55 @@ Priority is active in pipeline mode. Creating flow rules and setting priority 0/1 will map switch/fdir filter separately. Patterns in this case: - MAC_IPV4_TCP - MAC_IPV4_VXLAN_IPV4_UDP_PAY + MAC_IPV4_TCP + MAC_IPV4_VXLAN_IPV4_UDP_PAY #. Start the ``testpmd`` application as follows:: - ./x86_64-native-linuxapp-gcc/app/testpmd -c 0xf -n 4 -w 0000:af:00.0,pipeline-mode-support=1 --log-level="ice,7" -- -i --txq=8 --rxq=8 - set fwd rxonly - set verbose 1 - rx_vxlan_port add 4789 0 + ./x86_64-native-linuxapp-gcc/app/testpmd -c 0xf -n 4 -w 0000:af:00.0,pipeline-mode-support=1 --log-level="ice,7" -- -i --txq=8 --rxq=8 + set fwd rxonly + set verbose 1 + rx_vxlan_port add 4789 0 #. Create switch filter rules:: - flow create 0 priority 0 ingress pattern eth / ipv4 src is 192.168.0.2 dst is 192.168.0.3 tos is 4 / tcp src is 25 dst is 23 / end actions queue index 1 / end + flow create 0 priority 0 ingress pattern eth / ipv4 src is 192.168.0.2 dst is 192.168.0.3 tos is 4 / tcp src is 25 dst is 23 / end actions queue index 1 / end - flow create 0 priority 0 ingress pattern eth / ipv4 / udp / vxlan / eth / ipv4 src is 192.168.0.2 dst is 192.168.0.3 tos is 4 / udp src is 25 dst is 23 / end actions queue index 2 / end + flow create 0 priority 0 ingress pattern eth / ipv4 / udp / vxlan / eth / ipv4 src is 192.168.0.2 dst is 192.168.0.3 tos is 4 / udp src is 25 dst is 23 / end actions queue index 2 / end #. Create fdir filter rules:: - flow create 0 priority 1 ingress pattern eth / ipv4 src is 192.168.0.4 dst is 192.168.0.7 tos is 4 ttl is 20 / tcp src is 25 dst is 23 / end actions queue index 3 / end + flow create 0 priority 1 ingress pattern eth / ipv4 src is 192.168.0.4 dst is 192.168.0.7 tos is 4 ttl is 20 / tcp src is 25 dst is 23 / end actions queue index 3 / end - flow create 0 priority 1 ingress pattern eth / ipv4 / udp / vxlan / eth / ipv4 src is 192.168.0.4 dst is 192.168.0.7 / udp src is 25 dst is 23 / end actions queue index 4 / end + flow create 0 priority 1 ingress pattern eth / ipv4 / udp / vxlan / eth / ipv4 src is 192.168.0.4 dst is 192.168.0.7 / udp src is 25 dst is 23 / end actions queue index 4 / end #. Check flow list with commands "flow list 0", all flows are created correctly:: - +-----+--------+--------+--------+-----------------------+ - |ID | Group | Prio | Attr | Rul | - +=====+========+========+========+=======================+ - | 0 | 0 | 0 | i- | ETH IPV4 TCP => QUEUE | - +-----+--------+--------+--------+-----------------------+ - | 1 ... | - +-----+--------+--------+--------+-----------------------+ - | 2 ... | - +-----+--------+--------+--------+-----------------------+ - | 3 ... | - +-----+--------+--------+--------+-----------------------+ + +-----+--------+--------+--------+-----------------------+ + |ID | Group | Prio | Attr | Rul | + +=====+========+========+========+=======================+ + | 0 | 0 | 0 | i- | ETH IPV4 TCP => QUEUE | + +-----+--------+--------+--------+-----------------------+ + | 1 ... | + +-----+--------+--------+--------+-----------------------+ + | 2 ... | + +-----+--------+--------+--------+-----------------------+ + | 3 ... | + +-----+--------+--------+--------+-----------------------+ #. Send packets according to the created rules in tester:: - sendp([Ether(dst="00:00:00:00:11:00",src="11:22:33:44:55:66")/IP(src="192.168.0.2",dst="192.168.0.3",tos=4)/TCP(sport=25,dport=23)/Raw('x'*80)],iface="enp134s0f0") - sendp([Ether(dst="00:00:00:00:11:00",src="11:22:33:44:55:66")/IP()/UDP()/VXLAN()/Ether()/IP(src="192.168.0.2",dst="192.168.0.3",tos=4)/UDP(sport=25,dport=23)/Raw('x'*80)],iface="enp134s0f0") - sendp([Ether(dst="00:00:00:00:11:00",src="11:22:33:44:55:66")/IP(src="192.168.0.4",dst="192.168.0.7",tos=4,ttl=20)/TCP(sport=25,dport=23)/Raw('x'*80)],iface="enp134s0f0") - sendp([Ether(dst="00:00:00:00:11:00",src="11:22:33:44:55:66")/IP()/UDP()/VXLAN()/Ether()/IP(src="192.168.0.4 ",dst="192.168.0.7")/UDP(sport=25,dport=23)/Raw('x'*80)],iface="enp134s0f0") + sendp([Ether(dst="00:00:00:00:11:00",src="11:22:33:44:55:66")/IP(src="192.168.0.2",dst="192.168.0.3",tos=4)/TCP(sport=25,dport=23)/Raw('x'*80)],iface="enp134s0f0") + sendp([Ether(dst="00:00:00:00:11:00",src="11:22:33:44:55:66")/IP()/UDP()/VXLAN()/Ether()/IP(src="192.168.0.2",dst="192.168.0.3",tos=4)/UDP(sport=25,dport=23)/Raw('x'*80)],iface="enp134s0f0") + sendp([Ether(dst="00:00:00:00:11:00",src="11:22:33:44:55:66")/IP(src="192.168.0.4",dst="192.168.0.7",tos=4,ttl=20)/TCP(sport=25,dport=23)/Raw('x'*80)],iface="enp134s0f0") + sendp([Ether(dst="00:00:00:00:11:00",src="11:22:33:44:55:66")/IP()/UDP()/VXLAN()/Ether()/IP(src="192.168.0.4 ",dst="192.168.0.7")/UDP(sport=25,dport=23)/Raw('x'*80)],iface="enp134s0f0") #. Check the packets are recieved in right queues by dut:: - testpmd> port 0/queue 1: received 1 packets + testpmd> port 0/queue 1: received 1 packets src=11:22:33:44:55:66 - dst=00:00:00:00:11:00 - type=0x0800 - length=134 - nb_segs=1 - RSS hash=0x96803f93 - RSS queue=0x1 - hw ptype: L2_ETHER L3_IPV4_EXT_UNKNOWN L4_TCP - sw ptype: L2_ETHER L3_IPV4 L4_TCP - l2_len=14 - l3_len=20 - l4_len=20 - Receive queue=0x1 ol_flags: PKT_RX_RSS_HASH PKT_RX_L4_CKSUM_GOOD PKT_RX_IP_CKSUM_GOOD PKT_RX_OUTER_L4_CKSUM_UNKNOWN - ...... + ...... #. Create rules without priority, Check only patterns supported by switch can be created for the default priorty is 0. So the first flow can be created and the second flow can not be created:: @@ -180,20 +180,20 @@ Test case: Create No Destination High Priority Flow Rule A no destination high priority rule is not acceptable. Destination here means exact actions. Patterns in this case: - MAC_IPV4_TCP + MAC_IPV4_TCP #. Start the ``testpmd`` application as follows:: - ./x86_64-native-linuxapp-gcc/app/testpmd -c 0xf -n 4 -w 0000:af:00.0,pipeline-mode-support=1 --log-level="ice,7" -- -i --txq=8 --rxq=8 - set fwd rxonly - set verbose 1 + ./x86_64-native-linuxapp-gcc/app/testpmd -c 0xf -n 4 -w 0000:af:00.0,pipeline-mode-support=1 --log-level="ice,7" -- -i --txq=8 --rxq=8 + set fwd rxonly + set verbose 1 #. Create a rule without exact actions, check the flows can not be created:: - testpmd> flow create 0 priority 0 ingress pattern eth / ipv4 src is 192.168.0.2 dst is 192.168.0.3 tos is 4 / tcp src is 25 dst is 23 / end actions / end - Bad arguments - testpmd> flow create 0 priority 0 ingress pattern eth / ipv4 src is 192.168.0.2 dst is 192.168.0.3 tos is 4 / tcp src is 25 dst is 23 / end - Bad arguments + testpmd> flow create 0 priority 0 ingress pattern eth / ipv4 src is 192.168.0.2 dst is 192.168.0.3 tos is 4 / tcp src is 25 dst is 23 / end actions / end + Bad arguments + testpmd> flow create 0 priority 0 ingress pattern eth / ipv4 src is 192.168.0.2 dst is 192.168.0.3 tos is 4 / tcp src is 25 dst is 23 / end + Bad arguments Test case: Create Flow Rules Only Supported by Fdir Filter with Priority 0 =========================================================================== @@ -201,24 +201,24 @@ Test case: Create Flow Rules Only Supported by Fdir Filter with Priority 0 Creating a rule only supported by fdir filter with priority 0, it is not acceptable. Patterns in this case: - MAC_IPV6_SCTP - MAC_IPV4_SCTP + MAC_IPV6_SCTP + MAC_IPV4_SCTP #. Start the ``testpmd`` application as follows:: - ./x86_64-native-linuxapp-gcc/app/testpmd -c 0xf -n 4 -w 0000:af:00.0,pipeline-mode-support=1 --log-level="ice,7" -- -i --txq=8 --rxq=8 - set fwd rxonly - set verbose 1 + ./x86_64-native-linuxapp-gcc/app/testpmd -c 0xf -n 4 -w 0000:af:00.0,pipeline-mode-support=1 --log-level="ice,7" -- -i --txq=8 --rxq=8 + set fwd rxonly + set verbose 1 #. Create rules, check the flows can not be created:: - testpmd> flow create 0 priority 0 ingress pattern eth / ipv6 src is 1111:2222:3333:4444:5555:6666:7777:8888 dst is 1111:2222:3333:4444:5555:6666:7777:9999 / sctp src is 25 dst is 23 / end actions queue index 1 / end - ice_flow_create(): Failed to create flow - Caught error type 2 (flow rule (handle)): Invalid input pattern: Invalid argument + testpmd> flow create 0 priority 0 ingress pattern eth / ipv6 src is 1111:2222:3333:4444:5555:6666:7777:8888 dst is 1111:2222:3333:4444:5555:6666:7777:9999 / sctp src is 25 dst is 23 / end actions queue index 1 / end + ice_flow_create(): Failed to create flow + Caught error type 2 (flow rule (handle)): Invalid input pattern: Invalid argument - testpmd> flow create 0 priority 0 ingress pattern eth / ipv4 src is 192.168.0.2 dst is 192.168.0.3 tos is 4 ttl is 20 / sctp src is 25 dst is 23 / end actions queue index 1 / end - ice_flow_create(): Failed to create flow - Caught error type 2 (flow rule (handle)): Invalid input pattern: Invalid argument + testpmd> flow create 0 priority 0 ingress pattern eth / ipv4 src is 192.168.0.2 dst is 192.168.0.3 tos is 4 ttl is 20 / sctp src is 25 dst is 23 / end actions queue index 1 / end + ice_flow_create(): Failed to create flow + Caught error type 2 (flow rule (handle)): Invalid input pattern: Invalid argument Test case: Create flow rules only supported by switch filter with priority 1 @@ -227,24 +227,24 @@ Test case: Create flow rules only supported by switch filter with priority 1 Create a rule only supported by fdir switch with priority 1, it is not acceptable. Patterns in this case: - MAC_IPV4_NVGRE_MAC_IPV4 - MAC_IPV4_NVGRE_MAC_IPV4_UDP + MAC_IPV4_NVGRE_MAC_IPV4 + MAC_IPV4_NVGRE_MAC_IPV4_UDP #. Start the ``testpmd`` application as follows:: - ./x86_64-native-linuxapp-gcc/app/testpmd -c 0xf -n 4 -w 0000:af:00.0,pipeline-mode-support=1 --log-level="ice,7" -- -i --txq=8 --rxq=8 - set fwd rxonly - set verbose 1 + ./x86_64-native-linuxapp-gcc/app/testpmd -c 0xf -n 4 -w 0000:af:00.0,pipeline-mode-support=1 --log-level="ice,7" -- -i --txq=8 --rxq=8 + set fwd rxonly + set verbose 1 #. Create rules, check the flows can not be created:: - testpmd> flow create 0 priority 1 ingress pattern eth / ipv4 / nvgre / eth / ipv4 src is 192.168.0.2 dst is 192.168.0.3 tos is 4 / end actions queue index 3 / end - ice_flow_create(): Failed to create flow - Caught error type 13 (specific pattern item): cause: 0x7fffe65b8128, Unsupported pattern: Invalid argument + testpmd> flow create 0 priority 1 ingress pattern eth / ipv4 / nvgre / eth / ipv4 src is 192.168.0.2 dst is 192.168.0.3 tos is 4 / end actions queue index 3 / end + ice_flow_create(): Failed to create flow + Caught error type 13 (specific pattern item): cause: 0x7fffe65b8128, Unsupported pattern: Invalid argument - testpmd> flow create 0 priority 1 ingress pattern eth / ipv4 / nvgre / eth / ipv4 src is 192.168.0.2 dst is 192.168.0.3 tos is 4 / udp src is 25 dst is 23 / end actions queue index 3 / end - ice_flow_create(): Failed to create flow - Caught error type 13 (specific pattern item): cause: 0x7fffe65b8128, Unsupported pattern: Invalid argument + testpmd> flow create 0 priority 1 ingress pattern eth / ipv4 / nvgre / eth / ipv4 src is 192.168.0.2 dst is 192.168.0.3 tos is 4 / udp src is 25 dst is 23 / end actions queue index 3 / end + ice_flow_create(): Failed to create flow + Caught error type 13 (specific pattern item): cause: 0x7fffe65b8128, Unsupported pattern: Invalid argument Test case: Create flow rules with same parameter but differenet actions ========================================================================== @@ -257,57 +257,57 @@ Patterns in this case: #. Start the ``testpmd`` application as follows:: - ./x86_64-native-linuxapp-gcc/app/testpmd -c 0xf -n 4 -w 0000:af:00.0,pipeline-mode-support=1 --log-level="ice,7" -- -i --txq=8 --rxq=8 - set fwd rxonly - set verbose 1 + ./x86_64-native-linuxapp-gcc/app/testpmd -c 0xf -n 4 -w 0000:af:00.0,pipeline-mode-support=1 --log-level="ice,7" -- -i --txq=8 --rxq=8 + set fwd rxonly + set verbose 1 #. Create switch rule then fdir rule with the same parameter, check two flows can be created:: - testpmd> flow create 0 priority 0 ingress pattern eth / ipv4 src is 192.168.0.2 dst is 192.168.0.3 tos is 4 / tcp src is 25 dst is 23 / end actions queue index 1 / end - ice_flow_create(): Succeeded to create (2) flow - Flow rule #0 created + testpmd> flow create 0 priority 0 ingress pattern eth / ipv4 src is 192.168.0.2 dst is 192.168.0.3 tos is 4 / tcp src is 25 dst is 23 / end actions queue index 1 / end + ice_flow_create(): Succeeded to create (2) flow + Flow rule #0 created - testpmd> flow create 0 priority 1 ingress pattern eth / ipv4 src is 192.168.0.2 dst is 192.168.0.3 tos is 4 / tcp src is 25 dst is 23 / end actions queue index 3 / end - ice_interrupt_handler(): OICR: MDD event - ice_flow_create(): Succeeded to create (1) flow - Flow rule #1 created + testpmd> flow create 0 priority 1 ingress pattern eth / ipv4 src is 192.168.0.2 dst is 192.168.0.3 tos is 4 / tcp src is 25 dst is 23 / end actions queue index 3 / end + ice_interrupt_handler(): OICR: MDD event + ice_flow_create(): Succeeded to create (1) flow + Flow rule #1 created #. Tester send a pkt to dut:: - sendp([Ether(dst="00:00:00:00:11:00",src="11:22:33:44:55:66")/IP(src="192.168.0.2",dst="192.168.0.3",tos=4)/TCP(sport=25,dport=23)/Raw('x'*80)],iface="enp134s0f0") + sendp([Ether(dst="00:00:00:00:11:00",src="11:22:33:44:55:66")/IP(src="192.168.0.2",dst="192.168.0.3",tos=4)/TCP(sport=25,dport=23)/Raw('x'*80)],iface="enp134s0f0") #. Check the packets are recieved by dut in queue 1:: - testpmd> port 0/queue 1: received 1 packets - src=11:22:33:44:55:66 - dst=00:00:00:00:11:00 - type=0x0800 - length=134 - nb_segs=1 - RSS hash=0xf12811f1 - RSS queue=0x1 - hw ptype: L2_ETHER L3_IPV4_EXT_UNKNOWN L4_TCP - sw ptype: L2_ETHER L3_IPV4 L4_TCP - l2_len=14 - l3_len=20 - l4_len=20 - Receive queue=0x1 - ol_flags: PKT_RX_RSS_HASH PKT_RX_L4_CKSUM_GOOD PKT_RX_IP_CKSUM_GOOD PKT_RX_OUTER_L4_CKSUM_UNKNOWN + testpmd> port 0/queue 1: received 1 packets + src=11:22:33:44:55:66 - dst=00:00:00:00:11:00 - type=0x0800 - length=134 - nb_segs=1 - RSS hash=0xf12811f1 - RSS queue=0x1 - hw ptype: L2_ETHER L3_IPV4_EXT_UNKNOWN L4_TCP - sw ptype: L2_ETHER L3_IPV4 L4_TCP - l2_len=14 - l3_len=20 - l4_len=20 - Receive queue=0x1 + ol_flags: PKT_RX_RSS_HASH PKT_RX_L4_CKSUM_GOOD PKT_RX_IP_CKSUM_GOOD PKT_RX_OUTER_L4_CKSUM_UNKNOWN #. Remove the switch rule:: - - testpmd>flow destroy 0 rule 0 + + testpmd>flow destroy 0 rule 0 #. Tester send a pkt to dut:: - sendp([Ether(dst="00:00:00:00:11:00",src="11:22:33:44:55:66")/IP(src="192.168.0.2",dst="192.168.0.3",tos=4)/TCP(sport=25,dport=23)/Raw('x'*80)],iface="enp134s0f0") + sendp([Ether(dst="00:00:00:00:11:00",src="11:22:33:44:55:66")/IP(src="192.168.0.2",dst="192.168.0.3",tos=4)/TCP(sport=25,dport=23)/Raw('x'*80)],iface="enp134s0f0") #. Check the packets are recieved in queue 3:: - testpmd> port 0/queue 3: received 1 packets - src=11:22:33:44:55:66 - dst=00:00:00:00:11:00 - type=0x0800 - length=134 - nb_segs=1 - RSS hash=0xf12811f1 - RSS queue=0x3 - hw ptype: L2_ETHER L3_IPV4_EXT_UNKNOWN L4_TCP - sw ptype: L2_ETHER L3_IPV4 L4_TCP - l2_len=14 - l3_len=20 - l4_len=20 - Receive queue=0x3 - ol_flags: PKT_RX_RSS_HASH PKT_RX_L4_CKSUM_GOOD PKT_RX_IP_CKSUM_GOOD PKT_RX_OUTER_L4_CKSUM_UNKNOWN + testpmd> port 0/queue 3: received 1 packets + src=11:22:33:44:55:66 - dst=00:00:00:00:11:00 - type=0x0800 - length=134 - nb_segs=1 - RSS hash=0xf12811f1 - RSS queue=0x3 - hw ptype: L2_ETHER L3_IPV4_EXT_UNKNOWN L4_TCP - sw ptype: L2_ETHER L3_IPV4 L4_TCP - l2_len=14 - l3_len=20 - l4_len=20 - Receive queue=0x3 + ol_flags: PKT_RX_RSS_HASH PKT_RX_L4_CKSUM_GOOD PKT_RX_IP_CKSUM_GOOD PKT_RX_OUTER_L4_CKSUM_UNKNOWN #. Restart the ``testpmd`` application as follows:: - ./x86_64-native-linuxapp-gcc/app/testpmd -c 0xf -n 4 -w 0000:af:00.0, pipeline-mode-support=1 --log-level="ice,7" -- -i --txq=8 --rxq=8 - set fwd rxonly - set verbose 1 + ./x86_64-native-linuxapp-gcc/app/testpmd -c 0xf -n 4 -w 0000:af:00.0, pipeline-mode-support=1 --log-level="ice,7" -- -i --txq=8 --rxq=8 + set fwd rxonly + set verbose 1 #. Create fdir rule then switch rule with the same parameter, check two flows can be created:: - testpmd> flow create 0 priority 1 ingress pattern eth / ipv4 src is 192.168.0.2 dst is 192.168.0.3 tos is 4 / tcp src is 25 dst is 23 / end actions queue index 3 / end - ice_interrupt_handler(): OICR: MDD event - ice_flow_create(): Succeeded to create (1) flow - Flow rule #0 created + testpmd> flow create 0 priority 1 ingress pattern eth / ipv4 src is 192.168.0.2 dst is 192.168.0.3 tos is 4 / tcp src is 25 dst is 23 / end actions queue index 3 / end + ice_interrupt_handler(): OICR: MDD event + ice_flow_create(): Succeeded to create (1) flow + Flow rule #0 created testpmd> flow create 0 priority 0 ingress pattern eth / ipv4 src is 192.168.0.2 dst is 192.168.0.3 tos is 4 / tcp src is 25 dst is 23 / end actions queue index 1 / end ice_flow_create(): Succeeded to create (2) flow @@ -315,24 +315,24 @@ Patterns in this case: #. Tester send a pkt to dut:: - sendp([Ether(dst="00:00:00:00:11:00",src="11:22:33:44:55:66")/IP(src="192.168.0.2",dst="192.168.0.3",tos=4)/TCP(sport=25,dport=23)/Raw('x'*80)],iface="enp134s0f0") + sendp([Ether(dst="00:00:00:00:11:00",src="11:22:33:44:55:66")/IP(src="192.168.0.2",dst="192.168.0.3",tos=4)/TCP(sport=25,dport=23)/Raw('x'*80)],iface="enp134s0f0") #. Check the packets are recieved by dut in queue 1:: - testpmd> port 0/queue 1: received 1 packets + testpmd> port 0/queue 1: received 1 packets src=11:22:33:44:55:66 - dst=00:00:00:00:11:00 - type=0x0800 - length=134 - nb_segs=1 - RSS hash=0xf12811f1 - RSS queue=0x1 - hw ptype: L2_ETHER L3_IPV4_EXT_UNKNOWN L4_TCP - sw ptype: L2_ETHER L3_IPV4 L4_TCP - l2_len=14 - l3_len=20 - l4_len=20 - Receive queue=0x1 ol_flags: PKT_RX_RSS_HASH PKT_RX_L4_CKSUM_GOOD PKT_RX_IP_CKSUM_GOOD PKT_RX_OUTER_L4_CKSUM_UNKNOWN #. Remove the switch rule:: - testpmd>flow destroy 0 rule 1 + testpmd>flow destroy 0 rule 1 #. Tester send a pkt to dut:: - sendp([Ether(dst="00:00:00:00:11:00",src="11:22:33:44:55:66")/IP(src="192.168.0.2",dst="192.168.0.3",tos=4)/TCP(sport=25,dport=23)/Raw('x'*80)],iface="enp134s0f0") + sendp([Ether(dst="00:00:00:00:11:00",src="11:22:33:44:55:66")/IP(src="192.168.0.2",dst="192.168.0.3",tos=4)/TCP(sport=25,dport=23)/Raw('x'*80)],iface="enp134s0f0") #. Check the packets are recieved in queue 3:: - testpmd> port 0/queue 3: received 1 packets + testpmd> port 0/queue 3: received 1 packets src=11:22:33:44:55:66 - dst=00:00:00:00:11:00 - type=0x0800 - length=134 - nb_segs=1 - RSS hash=0xf12811f1 - RSS queue=0x3 - hw ptype: L2_ETHER L3_IPV4_EXT_UNKNOWN L4_TCP - sw ptype: L2_ETHER L3_IPV4 L4_TCP - l2_len=14 - l3_len=20 - l4_len=20 - Receive queue=0x3 ol_flags: PKT_RX_RSS_HASH PKT_RX_L4_CKSUM_GOOD PKT_RX_IP_CKSUM_GOOD PKT_RX_OUTER_L4_CKSUM_UNKNOWN -- 1.8.3.1