From patchwork Tue Nov 22 08:21:59 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Weiyuan Li X-Patchwork-Id: 120054 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 2B371A057F; Tue, 22 Nov 2022 09:22:20 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 0CCF242D43; Tue, 22 Nov 2022 09:22:20 +0100 (CET) Received: from mga18.intel.com (mga18.intel.com [134.134.136.126]) by mails.dpdk.org (Postfix) with ESMTP id 34221427EB for ; Tue, 22 Nov 2022 09:22:16 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1669105338; x=1700641338; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=ebYwX5VXbDzmwuBGvytGL5+rw31UvgR5+ryxhRaFfws=; b=k7KJL/nhgIW5hCRoCd1wVenmNYXVPHMwC+2aKeMANHhu0GlLA0RNfBGB 6y6ZfBWL7EAT2l0yK21Pi3mTRyW79rVlJhyLYt4G2r/CCOaLMwu4oZwHz dRFkHwe/1zDD0Xb47MqVdHseobvJEBBDzXc3/WEXD6jt+Mq/xCwG8mW+B ke6dn5VEwwH++eMVv6XMXvUHzKM2xH7VACradBBR23gwBhLTPR4nphcSS pscn50eihipGaMvnyEofbHoLksWf4L+zOEBqMOYEugMkPCY4qC0B8WsJF uADzv5IVe1vjPFG4VkGjGnqR9PYYF2U7vzO2CFznJNey9S8AEgvLTa+0X Q==; X-IronPort-AV: E=McAfee;i="6500,9779,10538"; a="297118803" X-IronPort-AV: E=Sophos;i="5.96,183,1665471600"; d="scan'208";a="297118803" Received: from fmsmga005.fm.intel.com ([10.253.24.32]) by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 22 Nov 2022 00:22:14 -0800 X-IronPort-AV: E=McAfee;i="6500,9779,10538"; a="970392785" X-IronPort-AV: E=Sophos;i="5.96,183,1665471600"; d="scan'208";a="970392785" Received: from unknown (HELO localhost.localdomain) ([10.239.252.248]) by fmsmga005-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 22 Nov 2022 00:22:12 -0800 From: Weiyuan Li To: dts@dpdk.org Cc: Weiyuan Li , Song Jiale Subject: [dts][PATCH V5 1/8] test_plans/dual_vlan: modify script and test plan to support i40e fimware >= 8.4 Date: Tue, 22 Nov 2022 16:21:59 +0800 Message-Id: <20221122082206.12559-1-weiyuanx.li@intel.com> X-Mailer: git-send-email 2.27.0 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 Modify script and test plan to i40e support fimware >= 8.4. When the fimrware >= 8.4, if the filter is to take effect need to enable extend. Signed-off-by: Weiyuan Li --- Tested-by: Song Jiale v2: -use the firmware version to judge whether to add command `extend on`. v3: -modify description. v4: -modify comments. -dual_vlan test plan modify table and add header. v5: -fix some typos. test_plans/dual_vlan_test_plan.rst | 83 ++++++++++++++++++++++++++++-- 1 file changed, 79 insertions(+), 4 deletions(-) diff --git a/test_plans/dual_vlan_test_plan.rst b/test_plans/dual_vlan_test_plan.rst index fab18515..0114a80d 100644 --- a/test_plans/dual_vlan_test_plan.rst +++ b/test_plans/dual_vlan_test_plan.rst @@ -35,6 +35,11 @@ The -n command is used to select the number of memory channels. It should match Test Case: Enable/Disable VLAN packets filtering ================================================ +Due to the kernel enables Qinq and cannot be closed, the DPDK only add `extend on` to make the VLAN filter +work normally. Therefore, if the i40e firmware version >= 8.4 the DPDK can only add `extend on` to make the VLAN filter work normally:: + + testpmd> vlan set extend on 0 + Setup the ``mac`` forwarding mode:: testpmd> set fwd mac @@ -61,9 +66,7 @@ Check whether the mode is set successful:: Allmulticast mode: disabled Maximum number of MAC addresses: 127 VLAN offload: - strip off - filter on - qinq(extend) off + strip off, filter on, extend on, qinq strip off start forwarding packets:: @@ -112,6 +115,11 @@ Disable VLAN packet extend and strip port ``0``:: testpmd> vlan set extend off 0 testpmd> vlan set strip off 0 +Due to the kernel enables Qinq and cannot be closed, the DPDK only add `extend on` to make the VLAN filter +work normally. Therefore, if the i40e firmware version >= 8.4 the DPDK can only add `extend on` to make the VLAN filter work normally:: + + testpmd> vlan set extend on 0 + Enable VLAN filtering on port ``0``:: testpmd> vlan set filter on 0 @@ -301,7 +309,9 @@ Do the synthetic test following the below table and check the result is the same as the table(the inserted VLAN Tag Identifier is limited to ``0x3``, and all modes except insert are set on rx port). -+-------+-------+--------+------------+--------+--------+-------+-------+-------+ ++-------------------------------------------------------+-----------------------+ +| Configure setting | Result | ++=======+=======+========+============+========+========+=======+=======+=======+ | Outer | Inner | Vlan | Vlan | Vlan | Vlan | Pass/ | Outer | Inner | | vlan | vlan | strip | filter | extend | insert | Drop | vlan | vlan | +-------+-------+--------+------------+--------+--------+-------+-------+-------+ @@ -358,6 +368,71 @@ except insert are set on rx port). | 0x1 | 0x2 | yes | yes,0x2 | yes | yes | pass | 0x3 | 0x1 | +-------+-------+--------+------------+--------+--------+-------+-------+-------+ +Due to the kernel enables Qinq and cannot be closed, the DPDK only add `extend on` to make the VLAN filter +work normally. Therefore, if the i40e firmware >= 8.4 the synthetic test according to the following table. +In addition, filter inner vlan when firmware <= 8.3, filter outer vlan when firmware >= 8.4. + ++-------------------------------------------------------+-----------------------+ +| Configure setting | Result | ++=======+=======+========+============+========+========+=======+=======+=======+ +| Outer | Inner | Vlan | Vlan | Vlan | Vlan | Pass/ | Outer | Inner | +| vlan | vlan | strip | filter | extend | insert | Drop | vlan | vlan | ++-------+-------+--------+------------+--------+--------+-------+-------+-------+ +| 0x1 | 0x2 | no | no | no | no | pass | 0x1 | 0x2 | ++-------+-------+--------+------------+--------+--------+-------+-------+-------+ +| 0x1 | 0x2 | yes | no | no | no | pass | no | 0x2 | ++-------+-------+--------+------------+--------+--------+-------+-------+-------+ +| 0x1 | 0x2 | no | yes,0x1 | no | no | pass | 0x1 | 0x2 | ++-------+-------+--------+------------+--------+--------+-------+-------+-------+ +| 0x1 | 0x2 | no | yes,0x2 | no | no | pass | 0x1 | 0x2 | ++-------+-------+--------+------------+--------+--------+-------+-------+-------+ +| 0x1 | 0x2 | yes | yes,0x1 | no | no | pass | no | 0x2 | ++-------+-------+--------+------------+--------+--------+-------+-------+-------+ +| 0x1 | 0x2 | yes | yes,0x2 | no | no | pass | no | 0x2 | ++-------+-------+--------+------------+--------+--------+-------+-------+-------+ +| 0x1 | 0x2 | no | no | yes | no | pass | 0x1 | 0x2 | ++-------+-------+--------+------------+--------+--------+-------+-------+-------+ +| 0x1 | 0x2 | yes | no | yes | no | pass | no | 0x1 | ++-------+-------+--------+------------+--------+--------+-------+-------+-------+ +| 0x1 | 0x2 | no | yes,0x1 | yes | no | pass | 0x1 | 0x2 | ++-------+-------+--------+------------+--------+--------+-------+-------+-------+ +| 0x1 | 0x2 | no | yes,0x2 | yes | no | drop | no | no | ++-------+-------+--------+------------+--------+--------+-------+-------+-------+ +| 0x1 | 0x2 | yes | yes,0x1 | yes | no | pass | no | 0x1 | ++-------+-------+--------+------------+--------+--------+-------+-------+-------+ +| 0x1 | 0x2 | yes | yes,0x2 | yes | no | drop | no | no | ++-------+-------+--------+------------+--------+--------+-------+-------+-------+ +| 0x1 | 0x2 | no | no | no | yes | pass | 0x3 | 0x1 | +| | | | | | | | | 0x2 | ++-------+-------+--------+------------+--------+--------+-------+-------+-------+ +| 0x1 | 0x2 | yes | no | no | yes | pass | 0x3 | 0x2 | ++-------+-------+--------+------------+--------+--------+-------+-------+-------+ +| 0x1 | 0x2 | no | yes,0x1 | no | yes | pass | 0x3 | 0x1 | +| | | | | | | | | 0x2 | ++-------+-------+--------+------------+--------+--------+-------+-------+-------+ +| 0x1 | 0x2 | no | yes,0x2 | no | yes | pass | 0x3 | 0x1 | +| | | | | | | | | 0x2 | ++-------+-------+--------+------------+--------+--------+-------+-------+-------+ +| 0x1 | 0x2 | yes | yes,0x1 | no | yes | pass | 0x3 | 0x2 | ++-------+-------+--------+------------+--------+--------+-------+-------+-------+ +| 0x1 | 0x2 | yes | yes,0x2 | no | yes | drop | no | no | ++-------+-------+--------+------------+--------+--------+-------+-------+-------+ +| 0x1 | 0x2 | no | no | yes | yes | pass | 0x3 | 0x1 | +| | | | | | | | | 0x2 | ++-------+-------+--------+------------+--------+--------+-------+-------+-------+ +| 0x1 | 0x2 | yes | no | yes | yes | pass | 0x3 | 0x1 | ++-------+-------+--------+------------+--------+--------+-------+-------+-------+ +| 0x1 | 0x2 | no | yes,0x1 | yes | yes | pass | 0x3 | 0x1 | +| | | | | | | | | 0x2 | ++-------+-------+--------+------------+--------+--------+-------+-------+-------+ +| 0x1 | 0x2 | no | yes,0x2 | yes | yes | pass | 0x3 | 0x1 | +| | | | | | | | | 0x2 | ++-------+-------+--------+------------+--------+--------+-------+-------+-------+ +| 0x1 | 0x2 | yes | yes,0x1 | yes | yes | pass | 0x3 | 0x1 | ++-------+-------+--------+------------+--------+--------+-------+-------+-------+ +| 0x1 | 0x2 | yes | yes,0x2 | yes | yes | drop | no | no | ++-------+-------+--------+------------+--------+--------+-------+-------+-------+ + Test Case: Strip/Filter/Extend/Insert enable/disable random test ================================================================