From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by dpdk.org (Postfix) with ESMTP id 5E1072BA6 for ; Fri, 4 Mar 2016 10:23:31 +0100 (CET) Received: from fmsmga002.fm.intel.com ([10.253.24.26]) by orsmga103.jf.intel.com with ESMTP; 04 Mar 2016 01:23:13 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.22,535,1449561600"; d="scan'208";a="929466882" Received: from fmsmsx103.amr.corp.intel.com ([10.18.124.201]) by fmsmga002.fm.intel.com with ESMTP; 04 Mar 2016 01:23:12 -0800 Received: from fmsmsx157.amr.corp.intel.com (10.18.116.73) by FMSMSX103.amr.corp.intel.com (10.18.124.201) with Microsoft SMTP Server (TLS) id 14.3.248.2; Fri, 4 Mar 2016 01:23:12 -0800 Received: from shsmsx101.ccr.corp.intel.com (10.239.4.153) by FMSMSX157.amr.corp.intel.com (10.18.116.73) with Microsoft SMTP Server (TLS) id 14.3.248.2; Fri, 4 Mar 2016 01:23:11 -0800 Received: from shsmsx103.ccr.corp.intel.com ([169.254.4.24]) by SHSMSX101.ccr.corp.intel.com ([169.254.1.136]) with mapi id 14.03.0248.002; Fri, 4 Mar 2016 17:23:10 +0800 From: "Liu, Yong" To: "Lu, Wenzhuo" , "dev@dpdk.org" Thread-Topic: [dpdk-dev] [PATCH v4 0/7] support E-tag offloading and forwarding on Intel X550 NIC Thread-Index: AQHRafaXAJ7Zny183UO5jzAfMZvaSJ9JGvJg Date: Fri, 4 Mar 2016 09:23:10 +0000 Message-ID: <86228AFD5BCD8E4EBFD2B90117B5E81E1450204B@SHSMSX103.ccr.corp.intel.com> References: <1454051035-25757-1-git-send-email-wenzhuo.lu@intel.com> <1455763573-2867-1-git-send-email-wenzhuo.lu@intel.com> In-Reply-To: <1455763573-2867-1-git-send-email-wenzhuo.lu@intel.com> Accept-Language: zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiMTFhZGY1M2MtM2E0MC00OGVlLTgxYTktNWE1M2I5ZDRhNmRhIiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX0lDIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE1LjkuNi42IiwiVHJ1c3RlZExhYmVsSGFzaCI6Im5DbTBPUFR2MmhFNitrOEkyMCtzQ2lQRHhibXE3NnVxc3dKZEwzR3ZyZXc9In0= x-ctpclassification: CTP_IC x-originating-ip: [10.239.127.40] Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Subject: Re: [dpdk-dev] [PATCH v4 0/7] support E-tag offloading and forwarding on Intel X550 NIC X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 04 Mar 2016 09:23:31 -0000 Tested-by: Yong Liu - Tested Branch: dpdk-next-net - Tested Commit: 5fa83b5398e26af7537b09605432fcb3d0cc1d41 - OS: Fedora21 3.17.4-301.fc21.x86_64 - GCC: gcc version 4.9.2 20150212 - CPU: Intel(R) Xeon(R) CPU D-1540 @ 2.00GHz - NIC: Intel Corporation Device Sageville [8086:15ad] - Default x86_64-native-linuxapp-gcc configuration - Total 4 cases, 4 passed, 0 failed - Prerequisites command / instruction: Bound PF device to igb_uio ./tools/dpdk_nic_bind.py --bind=3Digb_uio 03:00.0 Create 2VF devices from PF device. echo 2 > /sys/bus/pci/devices/0000\:03\:00.0/max_vfs Detach VFs from the host, bind them to pci-stub driver virsh # nodedev-dettach pci_0000_03_10_0 virsh # nodedev-dettach pci_0000_03_10_2 Passthrough VF 03:10.0 & 03:10.2 to vm0 and start vm0 /usr/bin/qemu-system-x86_64 -name vm0 -enable-kvm \ -cpu host -smp 4 -m 2048 -drive file=3D/home/image/fedora20.img -vnc :1= \ -device pci-assign,host=3D03:10.0 \ -device pci-assign,host=3D03:10.2 Login vm0 and them bind VF devices to igb_uio driver. ./tools/dpdk_nic_bind.py --bind=3Digb_uio 00:04.0 00:05.0 Bind PF to vfio-pci and start testpmd in host testpmd -c f -n 3 -- -i Config to rxonly mode and enable verbose output testpmd> set fwd rxonly testpmd> set verbose 1 testpmd> start Start testpmd in guest, configured to mac forward mode testpmd -c 0x3 -n 1 -- -i --txqflags=3D0x0 testpmd> set fwd mac testpmd> start - Case: E-tag tunnel filter Description: check that E-tag tunnel filter can work as expected Command / instruction: Enable E-tag l2 tunnel support means enabling ability of parsing E-tag packet. This ability should be enabled before we enable filtering, forwarding, offloading for this specific type of tunnel host testpmd> port config 0 l2-tunnel E-tag enable Send 802.1BR packet to PF and VFs, check packet normally received - Case: E-tag filter and forwarding Description: check that E-tag forwarding work as expected Command / instruction: Enable E-tag packet forwarding and enable E-tag 1000 packet forward to = VF0 testpmd> E-tag set forwarding on port 0 testpmd> E-tag set filter add e-tag-id 1000 dst-pool 0 port 0 Send E-tag packet with broadcast mac and check packet only received on = VF0 =20 Set E-tag with ID 1000 forwarding to VF1 testpmd> E-tag set filter add e-tag-id 1000 dst-pool 1 port 0 Send 802.1BR packet with broadcast mac and check packet only received o= n VF1 Set E-tag with ID 1000 PF0 testpmd> E-tag set filter add e-tag-id 1000 dst-pool 2 port 0 Send 802.1BR packet with broadcast mac and check packet only received o= n PF =20 Remove E-tag testpmd> E-tag set filter del e-tag-id 1000 port 0 Send 802.1BR packet with broadcast mac and check packet not received - Case: E-tag insertion Description: check that E-tag insertion feature can work as expected Command / instruction: Enable E-tag insertion in VF0 testpmd> E-tag set insertion on port-tag-id 1000 port 0 vf 0 Send normal packet to VF1 and check forwarded packet contain E-tag Remove E-tag insertion in VF0 testpmd> E-tag set insertion off port 0 vf 0 Send normal packet to VF1 and check forwarded packet not include E-tag =20 - Case: E-tag strip Description: check that E-tag strip feature can work as expected Enable E-tag strip on PF testpmd> E-tag set filter add e-tag-id 1000 dst-pool 0 port 0 testpmd> E-tag set stripping on port 0 Send 802.1BR packet to VF and check forwarded packet without E-tag Disable E-tag strip on PF testpmd> E-tag set stripping off port 0 Send 802.1BR packet and check forwarded packet with E-tag. > -----Original Message----- > From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Wenzhuo Lu > Sent: Thursday, February 18, 2016 10:46 AM > To: dev@dpdk.org > Subject: [dpdk-dev] [PATCH v4 0/7] support E-tag offloading and > forwarding on Intel X550 NIC >=20 > This patch set adds the support of E-tag offloading and forwarding > on X550. > The offloading means E-tag can be inserted and stripped by HW. > And E-tag packets can be recognized and forwarded to specific pools > based on GRP and E-CID_base in E-tag. >=20 > E-tag is defined in IEEE802.1br. Please reference > http://www.ieee802.org/1/pages/802.1br.html. >=20 > V2: > * Add the introduction for E-tag. >=20 > V3: > * Add the hlep info for the new CLIs. > * Update the doc for testpmd. > * Update the E-tag insertion setting. Should insert different tunnel > id for every VF, not a common one for all. >=20 > V4: > * Fix strippig is not working issue. > * Update the filter adding function. Make sure there's only one filter > entry for one tunnel entry. > * Update the release note to add some info about how to use this feature. >=20 > Wenzhuo Lu (7): > ixgbe: select pool by MAC when using double VLAN > lib/librte_ether: support l2 tunnel config > ixgbe: support l2 tunnel config > app/testpmd: add CLIs for l2 tunnel config > lib/librte_ether: support new l2 tunnel operation > ixgbe: support l2 tunnel operation > app/testpmd: add CLIs for E-tag operation >=20 > app/test-pmd/cmdline.c | 647 > +++++++++++++++++++++++++++- > doc/guides/rel_notes/release_16_04.rst | 21 + > doc/guides/testpmd_app_ug/testpmd_funcs.rst | 37 ++ > drivers/net/ixgbe/ixgbe_ethdev.c | 521 ++++++++++++++++++++++ > lib/librte_ether/rte_eth_ctrl.h | 9 + > lib/librte_ether/rte_ethdev.c | 244 +++++++++++ > lib/librte_ether/rte_ethdev.h | 298 +++++++++++++ > 7 files changed, 1776 insertions(+), 1 deletion(-) >=20 > -- > 1.9.3