From patchwork Wed Sep 28 03:18:35 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ke Xu X-Patchwork-Id: 116986 Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 86630A00C2; Wed, 28 Sep 2022 05:25:42 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 824CE4114E; Wed, 28 Sep 2022 05:25:42 +0200 (CEST) Received: from mga18.intel.com (mga18.intel.com [134.134.136.126]) by mails.dpdk.org (Postfix) with ESMTP id 8E6F740E25 for ; Wed, 28 Sep 2022 05:25:41 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1664335541; x=1695871541; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=zRgfBkwnHfieh3HWTwFJV7tSrD59vCwhGexAAkNhVng=; b=LWXKgCmmBBPhPjjdjOTs3W62/mDa3Su3bkFtaxmwQJFdBAPQYIHwEEsR 1jJNmLH2UQGCao9cT8SpgD2k1Sc7iZSdxLxR/37hldNuYP4TvFoZkhxPp bFYq3pD33ogYnUoWeafKSsedvQq19LOGO8LUbloWbv6N6UVhsHtZwqFj9 sJJoyQoDfL2VsG4HqzLi33SlY8TgE5ELsIbAJioy+0A/j6DvG9ZcGH07N NoW3FKGyVKhEmJLBQB5VlOVgUbSY1b2gGiAZ53UNH1Tdjfco3MvKZYYXK 38FLvUaChn4lYgP8UsECDtAlWPv9EJksXy9zNKXazK0tMnSd/f0/tWdz9 w==; X-IronPort-AV: E=McAfee;i="6500,9779,10483"; a="284624562" X-IronPort-AV: E=Sophos;i="5.93,350,1654585200"; d="scan'208";a="284624562" Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 27 Sep 2022 20:25:40 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10483"; a="710802999" X-IronPort-AV: E=Sophos;i="5.93,350,1654585200"; d="scan'208";a="710802999" Received: from unknown (HELO DPDK-XUKE-LAB.sh.intel.com) ([10.67.116.226]) by FMSMGA003.fm.intel.com with ESMTP; 27 Sep 2022 20:25:38 -0700 From: Ke Xu To: dts@dpdk.org Cc: lijuan.tu@intel.com, jin.ling@intel.com, zhiminx.huang@intel.com, weiyuanx.li@intel.com, qi.fu@intel.com, Ke Xu Subject: [DTS][PATCH V1 09/21] test_plans/dcf_lifecycle: remove redundant white space Date: Wed, 28 Sep 2022 03:18:35 +0000 Message-Id: <20220928031836.770004-10-ke1.xu@intel.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20220928031836.770004-1-ke1.xu@intel.com> References: <20220928031836.770004-1-ke1.xu@intel.com> MIME-Version: 1.0 X-BeenThere: dts@dpdk.org X-Mailman-Version: 2.1.29 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 Signed-off-by: Jin Ling Reviewed-by: Ke Xu --- test_plans/dcf_lifecycle_test_plan.rst | 112 ++++++++++++------------- 1 file changed, 55 insertions(+), 57 deletions(-) diff --git a/test_plans/dcf_lifecycle_test_plan.rst b/test_plans/dcf_lifecycle_test_plan.rst index d1b19fe1..8475698a 100644 --- a/test_plans/dcf_lifecycle_test_plan.rst +++ b/test_plans/dcf_lifecycle_test_plan.rst @@ -1046,9 +1046,9 @@ ICE DCF enable device reset API Description =========== -DCF PMD need to support rte_eth_dev_reset.The reason is that when a DCF instance be killed, all the flow rules still exist in hardware. when DCF gets to reconnect, -It has already lost the flow context, and if the application wants to create new rules, they may fail because FW reports that the rules already exist.The current -workaround assumes that the user can turn off / turn on VF trust mode, so kernel PF will reset DCF by removing all old rules.The rte_eth_dev_reset API provides +DCF PMD need to support rte_eth_dev_reset.The reason is that when a DCF instance be killed, all the flow rules still exist in hardware. when DCF gets to reconnect, +It has already lost the flow context, and if the application wants to create new rules, they may fail because FW reports that the rules already exist.The current +workaround assumes that the user can turn off / turn on VF trust mode, so kernel PF will reset DCF by removing all old rules.The rte_eth_dev_reset API provides a more elegant way for the application to reset DCF through the command "port reset all" when reconnecting. Prerequisites @@ -1070,7 +1070,7 @@ General Set Up # CC=gcc meson --werror -Denable_kmods=True -Dlibdir=lib --default-library=static # ninja -C -j 110 -2. Get the pci device id and interface of DUT and tester. +2. Get the pci device id and interface of DUT and tester. For example, 0000:3b:00.0 and 0000:af:00.0 is pci device id, ens785f0 and ens260f0 is interface:: @@ -1097,7 +1097,7 @@ General Set Up 6. Bind the DUT port to dpdk:: # ./usertools/dpdk-devbind.py -b vfio-pci - + Test case ========= @@ -1107,26 +1107,26 @@ The common steps launch two testpmds and kill DCF process, then relaunch two tes 1. Launch the userland ``testpmd`` application on DUT as follows:: - /app/dpdk-testpmd -a -- -i + /app/dpdk-testpmd -a -- -i -..note:: +..note:: For , you can use "-c 0x6 -n 4", you can also refer to testpmd doc for other setings. For , you can use "0000:3b:01.0,cap=dcf,representor=vf[1] --file-prefix=dcf" for this test plan. - + 2. Launch another ``testpmd`` application on the VF1 of DUT as follows:: - /app/dpdk-testpmd -a -- -i + /app/dpdk-testpmd -a -- -i -..note:: +..note:: For , you can use "-c 0x18 -n 4", you can also refer to testpmd doc for other setings. - For this test plan, you can use "0000:3b:01.1 --file-prefix=vf" for this test plan. + For this test plan, you can use "0000:3b:01.1 --file-prefix=vf" for this test plan. 3. Set verbose in VF testpmd:: - + testpmd> set verbose 1 - + 4. Set fwd engine and start in VF testpmd:: testpmd> set fwd mac @@ -1151,7 +1151,7 @@ The common steps launch two testpmds and kill DCF process, then relaunch two tes Check the flow list:: testpmd> flow list 0 - + ID Group Prio Attr Rule 0 0 0 i-- ETH IPV4 => VF @@ -1181,14 +1181,14 @@ Test Steps ~~~~~~~~~~ 1. Check the process ID and kill DCF process:: - # ps -ef |grep testpmd + # ps -ef |grep testpmd # kill -9 ##### 2. Relaunch the userland ``testpmd`` application on DUT as follows:: - /app/dpdk-testpmd -a -- -i + /app/dpdk-testpmd -a -- -i -..note:: +..note:: For , you can use "-c 0x6 -n 4", you can also refer to testpmd doc for other setings. For , you can use "0000:3b:01.0,cap=dcf,representor=vf[1] --file-prefix=dcf" for this test plan. @@ -1233,7 +1233,7 @@ the VF1 of DUT:: Check the flow list:: testpmd> flow list 0 - + ID Group Prio Attr Rule 0 0 0 i-- ETH IPV4 => VF @@ -1260,7 +1260,7 @@ Test Steps # echo 1 > /sys/bus/pci/devices/0000:3b:01.0/reset 2. Reset port in DCF testpmd:: - + testpmd> stop testpmd> port stop all testpmd> port reset all @@ -1287,7 +1287,7 @@ Test Steps Check the flow list:: testpmd> flow list 0 - + ID Group Prio Attr Rule 0 0 0 i-- ETH IPV4 => VF @@ -1314,8 +1314,8 @@ Test Steps # echo 1 > /sys/bus/pci/devices/0000:3b:01.0/reset 2. Detach and reset port in DCF testpmd:: - - testpmd> stop + + testpmd> stop testpmd> port stop 0 testpmd> port detach 0 testpmd> port attach 3b:01.0,cap=dcf @@ -1343,7 +1343,7 @@ Test Steps Check the flow list:: testpmd> flow list 0 - + ID Group Prio Attr Rule 0 0 0 i-- ETH IPV4 => VF @@ -1357,7 +1357,7 @@ the VF1 of DUT:: testpmd> port 0/queue 0: received 1 packets src=00:11:22:33:44:55 - dst=C6:44:32:0A:EC:E1 - type=0x0800 - length=98 - nb_segs=1 - hw ptype: L2_ETHER L3_IPV4_EXT_UNKNOWN L4_NONFRAG - sw ptype: L2_ETHER L3_IPV4 - l2_len=14 - l3_len=20 - Receive queue=0x0 - ol_flags: RTE_MBUF_F_RX_L4_CKSUM_GOOD RTE_MBUF_F_RX_IP_CKSUM_GOOD RTE_MBUF_F_RX_OUTER_L4_CKSUM_UNKNOWN + ol_flags: RTE_MBUF_F_RX_L4_CKSUM_GOOD RTE_MBUF_F_RX_IP_CKSUM_GOOD RTE_MBUF_F_RX_OUTER_L4_CKSUM_UNKNOWN Test Case 4: two_testpmd_dcf_reset_mtu -------------------------------------- @@ -1370,14 +1370,14 @@ Test Steps # ifconfig ens785f0 mtu 3000 2. Reset port in DCF testpmd:: - + testpmd> stop testpmd> port stop all testpmd> port reset all testpmd> port start all testpmd> start testpmd> flow list 0 - + 3. Validate a switch rule to VF1 in DCF testpmd:: testpmd> flow validate 0 priority 0 ingress pattern eth / ipv4 src is dst is / end actions represented_port ethdev_port_id 1 / end @@ -1397,7 +1397,7 @@ Test Steps Check the flow list:: testpmd> flow list 0 - + ID Group Prio Attr Rule 0 0 0 i-- ETH IPV4 => VF @@ -1412,7 +1412,7 @@ the VF1 of DUT:: testpmd> port 0/queue 0: received 1 packets src=00:11:22:33:44:55 - dst=C6:44:32:0A:EC:E1 - type=0x0800 - length=98 - nb_segs=1 - hw ptype: L2_ETHER L3_IPV4_EXT_UNKNOWN L4_NONFRAG - sw ptype: L2_ETHER L3_IPV4 - l2_len=14 - l3_len=20 - Receive queue=0x0 ol_flags: RTE_MBUF_F_RX_L4_CKSUM_GOOD RTE_MBUF_F_RX_IP_CKSUM_GOOD RTE_MBUF_F_RX_OUTER_L4_CKSUM_UNKNOWN - + Test Case 5: two_testpmd_dcf_reset_mac -------------------------------------- The test case resets DCF by resetting mac addr, and DCF should clean up all old rules. @@ -1424,7 +1424,7 @@ Test Steps # ip link set ens785f0 vf 0 mac 00:01:02:03:04:05 2. Reset port in DCF testpmd:: - + testpmd> stop testpmd> port stop all testpmd> port reset all @@ -1451,7 +1451,7 @@ Test Steps Check the flow list:: testpmd> flow list 0 - + ID Group Prio Attr Rule 0 0 0 i-- ETH IPV4 => VF @@ -1473,17 +1473,17 @@ The common steps launch one testpmd and kill DCF process, then relaunch one test 1. Launch the userland ``testpmd`` application on DUT as follows:: - /app/dpdk-testpmd -a -- -i + /app/dpdk-testpmd -a -- -i -..note:: +..note:: For , you can use "-c 0x6 -n 4", you can also refer to testpmd doc for other setings. For , you can use"-a 3b:01.0,cap=dcf,representor=vf[1] -a 3b:01.1 --file-prefix=dcf" for this test plan. 2. Set verbose:: - + testpmd> set verbose 1 - + 3. Set fwd engine and start:: testpmd> set fwd mac @@ -1508,7 +1508,7 @@ The common steps launch one testpmd and kill DCF process, then relaunch one test Check the flow list:: testpmd> flow list 0 - + ID Group Prio Attr Rule 0 0 0 i-- ETH IPV4 => VF @@ -1532,22 +1532,22 @@ Test Steps ~~~~~~~~~~ 1. Check the process ID and kill DCF process:: - # ps -ef |grep testpmd + # ps -ef |grep testpmd # kill -9 ##### 2. Relaunch the userland ``testpmd`` application on DUT as follows:: - /app/dpdk-testpmd -a -- -i + /app/dpdk-testpmd -a -- -i -..note:: +..note:: For , you can use "-c 0x6 -n 4", you can also refer to testpmd doc for other setings. For , you can use"-a 3b:01.0,cap=dcf,representor=vf[1] -a 3b:01.1 --file-prefix=dcf" for this test plan. 3. Set verbose:: - + testpmd> set verbose 1 - + 4. Set fwd engine and start:: testpmd> set fwd mac @@ -1562,10 +1562,10 @@ Tester:: DUT:: - testpmd> + testpmd> 6. Reset port in testpmd:: - + testpmd> stop testpmd> port stop all testpmd> port reset all @@ -1591,7 +1591,7 @@ DUT:: Check the flow list:: testpmd> flow list 0 - + ID Group Prio Attr Rule 0 0 0 i-- ETH IPV4 => VF @@ -1605,7 +1605,7 @@ DUT:: testpmd> port 1/queue 0: received 1 packets src=00:11:22:33:44:55 - dst=C6:44:32:0A:EC:E1 - type=0x0800 - length=98 - nb_segs=1 - hw ptype: L2_ETHER L3_IPV4_EXT_UNKNOWN L4_NONFRAG - sw ptype: L2_ETHER L3_IPV4 - l2_len=14 - l3_len=20 - Receive queue=0x0 - ol_flags: RTE_MBUF_F_RX_L4_CKSUM_GOOD RTE_MBUF_F_RX_IP_CKSUM_GOOD RTE_MBUF_F_RX_OUTER_L4_CKSUM_UNKNOWN + ol_flags: RTE_MBUF_F_RX_L4_CKSUM_GOOD RTE_MBUF_F_RX_IP_CKSUM_GOOD RTE_MBUF_F_RX_OUTER_L4_CKSUM_UNKNOWN Test Case 7: one_testpmd_dcf_reset_device ----------------------------------------- @@ -1618,7 +1618,7 @@ Test Steps # echo 1 > /sys/bus/pci/devices/0000:3b:01.0/reset 2. Reset port in testpmd:: - + testpmd> stop testpmd> port stop all testpmd> port reset all @@ -1645,7 +1645,7 @@ Test Steps Check the flow list:: testpmd> flow list 0 - + ID Group Prio Attr Rule 0 0 0 i-- ETH IPV4 => VF @@ -1672,8 +1672,8 @@ Test Steps # echo 1 > /sys/bus/pci/devices/0000:3b:01.0/reset 2. Detach and reset port in DCF testpmd:: - - testpmd> stop + + testpmd> stop testpmd> port stop 0 testpmd> port detach 0 testpmd> port attach 3b:01.0,cap=dcf,representor=vf[1] @@ -1701,7 +1701,7 @@ Test Steps Check the flow list:: testpmd> flow list 0 - + ID Group Prio Attr Rule 0 0 0 i-- ETH IPV4 => VF @@ -1715,7 +1715,7 @@ DUT:: testpmd> port 1/queue 0: received 1 packets src=00:11:22:33:44:55 - dst=C6:44:32:0A:EC:E1 - type=0x0800 - length=98 - nb_segs=1 - hw ptype: L2_ETHER L3_IPV4_EXT_UNKNOWN L4_NONFRAG - sw ptype: L2_ETHER L3_IPV4 - l2_len=14 - l3_len=20 - Receive queue=0x0 - ol_flags: RTE_MBUF_F_RX_L4_CKSUM_GOOD RTE_MBUF_F_RX_IP_CKSUM_GOOD RTE_MBUF_F_RX_OUTER_L4_CKSUM_UNKNOWN + ol_flags: RTE_MBUF_F_RX_L4_CKSUM_GOOD RTE_MBUF_F_RX_IP_CKSUM_GOOD RTE_MBUF_F_RX_OUTER_L4_CKSUM_UNKNOWN Test Case 9: one_testpmd_dcf_reset_mtu -------------------------------------- @@ -1728,13 +1728,13 @@ Test Steps # ifconfig ens785f0 mtu 3000 2. Reset port in DCF testpmd:: - + testpmd> stop testpmd> port stop all testpmd> port reset all testpmd> port start all testpmd> start - testpmd> flow list 0 + testpmd> flow list 0 3. Validate a switch rule to VF1:: @@ -1755,7 +1755,7 @@ Test Steps Check the flow list:: testpmd> flow list 0 - + ID Group Prio Attr Rule 0 0 0 i-- ETH IPV4 => VF @@ -1782,7 +1782,7 @@ Test Steps # ip link set ens785f0 vf 0 mac 00:01:02:03:04:05 2. Reset port in DCF testpmd:: - + testpmd> stop testpmd> port stop all testpmd> port reset all @@ -1809,7 +1809,7 @@ Test Steps Check the flow list:: testpmd> flow list 0 - + ID Group Prio Attr Rule 0 0 0 i-- ETH IPV4 => VF @@ -1824,5 +1824,3 @@ DUT:: testpmd> port 1/queue 0: received 1 packets src=00:11:22:33:44:55 - dst=C6:44:32:0A:EC:E1 - type=0x0800 - length=98 - nb_segs=1 - hw ptype: L2_ETHER L3_IPV4_EXT_UNKNOWN L4_NONFRAG - sw ptype: L2_ETHER L3_IPV4 - l2_len=14 - l3_len=20 - Receive queue=0x0 ol_flags: RTE_MBUF_F_RX_L4_CKSUM_GOOD RTE_MBUF_F_RX_IP_CKSUM_GOOD RTE_MBUF_F_RX_OUTER_L4_CKSUM_UNKNOWN - -