From patchwork Fri Oct 7 00:31:36 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Huang, ZhiminX" X-Patchwork-Id: 117489 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 71BBCA00C2; Thu, 6 Oct 2022 18:20:58 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 6E294410D3; Thu, 6 Oct 2022 18:20:58 +0200 (CEST) Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by mails.dpdk.org (Postfix) with ESMTP id E100E40042 for ; Thu, 6 Oct 2022 18:20:55 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1665073256; x=1696609256; h=from:to:cc:subject:date:message-id:in-reply-to: references; bh=juTvJC+RwcQNsJwBUM0D2ZLfhOiQUr71WWwHfcKUMPo=; b=SmE/uLSU8h5oLqdW1xojW5mVcPiUcjdCLvmSOQ8zHqL0+j52yQbo6IPg v3MaU90IKm36ttz6j4vnExy41+7M4fpbn9825es0tqCsEmEaXw8nFhTr4 QNaozHMd6zVGw+flvdM5RWRxt0FmPyXUOmFtP9B1Gjj7JVFyEgc1gLana C5ZeL+4QazprhVWO+l5ijAK9DdXGrWFhtQVfI7XrIBvrE3OTYwme3jPed 7NBjwQJqAvQWj9Sva81jsGrpSp5P7ok4Y2TjXcMNFgjpbMG1T0faAsEY8 mSiHSzpiauKYIt5DBJh0H91YZd7D2isIKx0+thX3qR/x3QgJTNgxtvawQ g==; X-IronPort-AV: E=McAfee;i="6500,9779,10492"; a="303469908" X-IronPort-AV: E=Sophos;i="5.95,164,1661842800"; d="scan'208";a="303469908" Received: from orsmga003.jf.intel.com ([10.7.209.27]) by fmsmga103.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 06 Oct 2022 09:20:55 -0700 X-IronPort-AV: E=McAfee;i="6500,9779,10492"; a="575888456" X-IronPort-AV: E=Sophos;i="5.95,164,1661842800"; d="scan'208";a="575888456" Received: from unknown (HELO cvl_100g_103.icx.intel.com) ([10.239.252.93]) by orsmga003-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 06 Oct 2022 09:20:54 -0700 From: Zhimin Huang To: dts@dpdk.org Cc: Zhimin Huang Subject: [dts][PATCH V6 2/3] test_plans/*:modify cases to check dcf as a full feature pmd Date: Fri, 7 Oct 2022 08:31:36 +0800 Message-Id: <20221007003137.12787-3-zhiminx.huang@intel.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20221007003137.12787-1-zhiminx.huang@intel.com> References: <20221007003137.12787-1-zhiminx.huang@intel.com> 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 the dcf mode support more pmd feature in dpdk22.07. modify cases to support dcf and check normal datapath in dcf mode. add description for support dcf case in testplan. 1.set vf trust on before start dcf 2.start up testpmd with dcf parm. Signed-off-by: Zhimin Huang Acked-by: Xueqin Lin --- v6: -optimize testplan, replace 'or' to 'if' v5: -detailed the subject and comments. test_plans/kernelpf_iavf_test_plan.rst | 14 +++++++++++++- test_plans/stats_checks_test_plan.rst | 16 +++++++++++++++- test_plans/vf_macfilter_test_plan.rst | 22 ++++++++++++++++++++++ test_plans/vf_offload_test_plan.rst | 18 +++++++++++++++++- test_plans/vf_rss_test_plan.rst | 15 ++++++++++++++- test_plans/vf_smoke_test_plan.rst | 17 ++++++++++++++++- test_plans/vf_vlan_test_plan.rst | 16 +++++++++++++++- 7 files changed, 112 insertions(+), 6 deletions(-) diff --git a/test_plans/kernelpf_iavf_test_plan.rst b/test_plans/kernelpf_iavf_test_plan.rst index d877bb90..4b797122 100644 --- a/test_plans/kernelpf_iavf_test_plan.rst +++ b/test_plans/kernelpf_iavf_test_plan.rst @@ -43,10 +43,22 @@ Test IAVF cases on host or in qemu Bind VF device to igb_uio or vfio-pci -Start up VF port:: +if test IAVF, start up VF port:: .//app/dpdk-testpmd -c f -n 4 -- -i +if test DCF, set VF port to dcf and start up:: + + Enable kernel trust mode: + + ip link set $PF_INTF vf 0 trust on + + .//app/dpdk-testpmd -c f -n 4 -a 0000:18:01.0,cap=dcf -- -i + +.. note:: + + make dcf as full feature pmd is dpdk22.07 feature, and only support E810 series nic. + Test case: VF basic RX/TX ========================= Set rxonly forward, start testpmd diff --git a/test_plans/stats_checks_test_plan.rst b/test_plans/stats_checks_test_plan.rst index 8c7e0add..1b7d722f 100644 --- a/test_plans/stats_checks_test_plan.rst +++ b/test_plans/stats_checks_test_plan.rst @@ -259,11 +259,25 @@ Test Case: VF xstats Checks ./usertools/dpdk-devbind.py -s ./usertools/dpdk-devbind.py -b vfio-pci vf_bus_id -2. Launch testpmd on the VF and enable RSS:: +2. Launch testpmd on the VF and enable RSS: + + if test IAVF, start up VF port:: ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c f -n 4 -- -i --rxq=4 --txq=4 testpmd> port config all rss all testpmd> set fwd mac + if test DCF, set VF port to dcf and start up:: + + Enable kernel trust mode: + + ip link set $PF_INTF vf 0 trust on + + ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c f -n 4 -a 0000:18:01.0,cap=dcf -- -i --rxq=4 --txq=4 + +.. note:: + + make dcf as full feature pmd is dpdk22.07 feature, and only support E810 series nic. + 3. Then run the same steps of PF xstats Checks, get same result. note: because one port forwarding packets, so check rx and tx both in port 0. diff --git a/test_plans/vf_macfilter_test_plan.rst b/test_plans/vf_macfilter_test_plan.rst index d623cf04..4c57f51f 100644 --- a/test_plans/vf_macfilter_test_plan.rst +++ b/test_plans/vf_macfilter_test_plan.rst @@ -68,6 +68,9 @@ Test Case 1: test_kernel_2pf_2vf_1vm_iplink_macfilter disable promisc mode,set it in mac forward mode:: ./usertools/dpdk-devbind.py --bind=igb_uio 00:06.0 00:07.0 + + if test IAVF, start up VF port:: + ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0x0f -n 4 -a 00:06.0 -a 00:07.0 -- -i --portmask=0x3 testpmd> port stop all @@ -77,6 +80,14 @@ Test Case 1: test_kernel_2pf_2vf_1vm_iplink_macfilter testpmd> set fwd mac testpmd> start + if test DCF, set VF port to dcf and start up:: + + ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0x0f -n 4 -a 00:06.0,cap=dcf -a 00:07.0,cap=dcf -- -i --portmask=0x3 + +.. note:: + + make dcf as full feature pmd is dpdk22.07 feature, and only support E810 series nic. + 6. Use scapy to send 100 random packets with ip link set MAC to VF, verify the packets can be received by one VF and can be forwarded to another VF correctly. @@ -146,6 +157,9 @@ Test Case 2: test_kernel_2pf_2vf_1vm_mac_add_filter VF, disable promisc mode, add a new MAC to VF0 and then start:: ./usertools/dpdk-devbind.py --bind=igb_uio 00:06.0 00:07.0 + + if test IAVF, start up VF port:: + ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0x0f -n 4 -a 00:06.0 -a 00:07.0 -- -i --portmask=0x3 testpmd> port stop all @@ -156,6 +170,14 @@ Test Case 2: test_kernel_2pf_2vf_1vm_mac_add_filter testpmd> set fwd mac testpmd> start + if test DCF, set VF port to dcf and start up:: + + ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0x0f -n 4 -a 00:06.0,cap=dcf -a 00:07.0,cap=dcf -- -i --portmask=0x3 + +.. note:: + + make dcf as full feature pmd is dpdk22.07 feature, and only support E810 series nic. + 6. Use scapy to send 100 random packets with current VF0's MAC, verify the packets can be received by one VF and can be forwarded to another VF correctly. diff --git a/test_plans/vf_offload_test_plan.rst b/test_plans/vf_offload_test_plan.rst index ba490e06..c5e720f2 100644 --- a/test_plans/vf_offload_test_plan.rst +++ b/test_plans/vf_offload_test_plan.rst @@ -24,12 +24,28 @@ IP link set VF trust on and spoofchk off on DUT:: Assuming that ports ``0`` and ``1`` are connected to a traffic generator, enable hardware rx checksum offload with "--enable-rx-cksum", -launch the ``testpmd`` with the following arguments:: +launch the ``testpmd`` with the following arguments: + + if test IAVF, start up VF port:: ./build/app/dpdk-testpmd -cffffff -n 1 -- -i --burst=1 --txpt`=32 \ --txht=8 --txwt=0 --txfreet=0 --rxfreet=64 --mbcache=250 --portmask=0x5 --enable-rx-cksum + if test DCF, set VF port to dcf and start up:: + + Enable kernel trust mode: + + ip link set $PF_INTF vf 0 trust on + + dpdk-testpmd -c 0x0f -n 4 -a 00:04.0,cap=dcf -a 00:05.0,cap=dcf -- -i --burst=1 --txpt=32 \ + --txht=8 --txwt=0 --txfreet=0 --rxfreet=64 --mbcache=250 --portmask=0x5 + --enable-rx-cksum + +.. note:: + + make dcf as full feature pmd is dpdk22.07 feature, and only support E810 series nic. + Set the verbose level to 1 to display information for each received packet:: testpmd> set verbose 1 diff --git a/test_plans/vf_rss_test_plan.rst b/test_plans/vf_rss_test_plan.rst index 846de2d7..92a417f4 100644 --- a/test_plans/vf_rss_test_plan.rst +++ b/test_plans/vf_rss_test_plan.rst @@ -50,10 +50,23 @@ The following RX Ports/Queues configurations have to be benchmarked: Testpmd configuration - 4 RX/TX queues per port ----------------------------------------------- -:: + if test IAVF, start up VF port:: dpdk-testpmd -c 1f -n 3 -- -i --rxq=4 --txq=4 + + if test DCF, set VF port to dcf and start up:: + + Enable kernel trust mode: + + ip link set $PF_INTF vf 0 trust on + + dpdk-testpmd -c 0x0f -n 4 -a 00:04.0,cap=dcf -a 00:05.0,cap=dcf -- -i --rxq=4 --txq=4 + +.. note:: + + make dcf as full feature pmd is dpdk22.07 feature, and only support E810 series nic. + Testpmd Configuration Options ----------------------------- diff --git a/test_plans/vf_smoke_test_plan.rst b/test_plans/vf_smoke_test_plan.rst index 33a3273c..40f7611d 100644 --- a/test_plans/vf_smoke_test_plan.rst +++ b/test_plans/vf_smoke_test_plan.rst @@ -51,7 +51,9 @@ Prerequisites modprobe vfio-pci ./usertools/dpdk-devbind.py -b vfio-pci 0000:86:01.0 -8. Launch dpdk on VF:: +8. Launch dpdk on VF: + + if test IAVF, start up VF port:: ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0xf -n 4 -a 0000:86:01.0 --file-prefix=pf -- -i --rxq=4 --txq=4 testpmd> set fwd mac @@ -59,6 +61,19 @@ Prerequisites testpmd> start testpmd> show port info all + if test DCF, set VF port to dcf and start up:: + + Enable kernel trust mode: + + ip link set $PF_INTF vf 0 trust on + + ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -c 0xf -n 4 -a 0000:86:01.0,cap=dcf --file-prefix=pf -- -i --rxq=4 + --txq=4 + +.. note:: + + make dcf as full feature pmd is dpdk22.07 feature, and only support E810 series nic. + Test Case 1: test enable and disable jumbo frame ==================================================== diff --git a/test_plans/vf_vlan_test_plan.rst b/test_plans/vf_vlan_test_plan.rst index 2c38d4dd..24877c6c 100644 --- a/test_plans/vf_vlan_test_plan.rst +++ b/test_plans/vf_vlan_test_plan.rst @@ -59,13 +59,27 @@ Prerequisites ./tools/dpdk_nic_bind.py --bind=igb_uio 00:04.0 00:05.0 -5. Start testpmd, set it in rxonly mode and enable verbose output:: +5. Start testpmd, set it in rxonly mode and enable verbose output: + + if test IAVF, start up VF port:: dpdk-testpmd -c 0x0f -n 4 -a 00:04.0 -a 00:05.0 -- -i --portmask=0x3 testpmd> set fwd rxonly testpmd> set verbose 1 testpmd> start + if test DCF, set VF port to dcf and start up:: + + Enable kernel trust mode: + + ip link set $PF_INTF vf 0 trust on + + dpdk-testpmd -c 0x0f -n 4 -a 00:04.0,cap=dcf -a 00:05.0,cap=dcf -- -i --portmask=0x3 + +.. note:: + + make dcf as full feature pmd is dpdk22.07 feature, and only support E810 series nic. + Test Case 1: Add port based vlan on VF ======================================