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 3D237A2E1B for ; Wed, 4 Sep 2019 07:08:02 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 279B41ECBA; Wed, 4 Sep 2019 07:08:02 +0200 (CEST) Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by dpdk.org (Postfix) with ESMTP id 387C11E9CF for ; Wed, 4 Sep 2019 07:08:00 +0200 (CEST) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga007.fm.intel.com ([10.253.24.52]) by fmsmga107.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 03 Sep 2019 22:07:59 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.64,465,1559545200"; d="scan'208";a="183785922" Received: from fmsmsx106.amr.corp.intel.com ([10.18.124.204]) by fmsmga007.fm.intel.com with ESMTP; 03 Sep 2019 22:07:59 -0700 Received: from fmsmsx118.amr.corp.intel.com (10.18.116.18) by FMSMSX106.amr.corp.intel.com (10.18.124.204) with Microsoft SMTP Server (TLS) id 14.3.439.0; Tue, 3 Sep 2019 22:07:59 -0700 Received: from shsmsx106.ccr.corp.intel.com (10.239.4.159) by fmsmsx118.amr.corp.intel.com (10.18.116.18) with Microsoft SMTP Server (TLS) id 14.3.439.0; Tue, 3 Sep 2019 22:07:59 -0700 Received: from shsmsx101.ccr.corp.intel.com ([169.254.1.92]) by SHSMSX106.ccr.corp.intel.com ([169.254.10.86]) with mapi id 14.03.0439.000; Wed, 4 Sep 2019 13:07:57 +0800 From: "Tu, Lijuan" To: "Zhu, TaoX" , "dts@dpdk.org" CC: "Zhu, TaoX" Thread-Topic: [dts] [PATCH V1] test_plans/sriov_kvm: Add fortville support and optimize some cases Thread-Index: AQHVXJz6/NDkw85Bvk+AYb9DcnFYn6cbBC/w Date: Wed, 4 Sep 2019 05:07:57 +0000 Message-ID: <8CE3E05A3F976642AAB0F4675D0AD20E0BB1BEBA@SHSMSX101.ccr.corp.intel.com> References: <1566885985-69940-1-git-send-email-taox.zhu@intel.com> In-Reply-To: <1566885985-69940-1-git-send-email-taox.zhu@intel.com> Accept-Language: zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-version: 11.2.0.6 dlp-reaction: no-action x-ctpclassification: CTP_NT x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiMGFiZDY1ZGMtNGVlZi00MmYxLTgzNDEtNmY3NjRmNWEwODJkIiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX05UIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE3LjEwLjE4MDQuNDkiLCJUcnVzdGVkTGFiZWxIYXNoIjoiSzF1Rjd6VjhxWjUxY1NNMDgwd0IrMUptOHVqOXNFeVwvQ1FKTU5PbFpUNmUwd29ZdjhtSDg3QWUzdERGRmVpTEEifQ== 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: [dts] [PATCH V1] test_plans/sriov_kvm: Add fortville support and optimize some cases 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" Applied, thanks > -----Original Message----- > From: dts [mailto:dts-bounces@dpdk.org] On Behalf Of Zhu Tao > Sent: Tuesday, August 27, 2019 2:06 PM > To: dts@dpdk.org > Cc: Zhu, TaoX > Subject: [dts] [PATCH V1] test_plans/sriov_kvm: Add fortville support and > optimize some cases >=20 > Adjustment for the following reasons: > 1. VLAN filter is not allowed to be set to vlan id 0 in fortville. > 2. link-mirror and pool-mirror can't coexist in fortville(hardware > limitation). > 3. Comprehensive coverage of fortville and niantic mirror features. >=20 > Signed-off-by: Zhu Tao > --- > test_plans/sriov_kvm_test_plan.rst | 190 +++++++++++++++++------------ > 1 file changed, 110 insertions(+), 80 deletions(-) >=20 > diff --git a/test_plans/sriov_kvm_test_plan.rst > b/test_plans/sriov_kvm_test_plan.rst > index f1c17c3..f22b2ed 100644 > --- a/test_plans/sriov_kvm_test_plan.rst > +++ b/test_plans/sriov_kvm_test_plan.rst > @@ -41,17 +41,18 @@ communications. > The testpmd application is used to configure traffic mirroring, PF VM re= ceive > mode, PFUTA hash table and control traffic to a VF for inter-VM > communication. >=20 > -The 82599 supports four separate mirroring rules, each associated with a= - > destination pool. Each rule is programmed with one of the four mirroring > types: > - > -1. Pool mirroring: reflect all the packets received to a pool from the n= etwork. > -2. Uplink port mirroring: reflect all the traffic received from the netw= ork. > -3. Downlink port mirroring: reflect all the traffic transmitted to the > +The Niantic and Fortville supports some separate mirroring rules, each > +associated with a destination pool. Each rule is programmed with one of > the five mirroring types: > + > +1. Pool up mirroring: reflect all the packets received from the pool ing= ress > traffic. > +2. Pool down mirroring(Fortville only): reflect all the traffic transmit= ted > from the > + pool. > +3. Uplink port mirroring: reflect all the traffic received from the ingr= ess > traffic. > +4. Downlink port mirroring: reflect all the traffic transmitted to the > network. > -4. VLAN mirroring: reflect all the traffic received from the network > +5. VLAN mirroring: reflect all the traffic received from the network > in a set of given VLANs (either from the network or from local VMs). >=20 > - > Prerequisites for all 2VMs cases/Mirror 2VMs cases > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D >=20 > @@ -133,14 +134,14 @@ will be forwarded to VF1 and then send out:: > Send 10 packets with VF0 mac address and make sure the packets will be > forwarded by VF1. >=20 > -Test Case2: Mirror Traffic between 2VMs with Pool mirroring > +Test Case2: Mirror Traffic between 2VMs with Pool up mirroring > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D >=20 > Set up common 2VM prerequisites. >=20 > Add one mirror rule that will mirror VM0 income traffic to VM1:: >=20 > - PF testpmd-> set port 0 mirror-rule 0 pool-mirror 0x1 dst-pool 1 on > + PF testpmd-> set port 0 mirror-rule 0 pool-mirror-up 0x1 dst-pool 1 > + on >=20 > Send 10 packets to VM0 and verify the packets has been mirrored to VM1 > and forwarded the packet. > @@ -149,8 +150,30 @@ After test need reset mirror rule:: >=20 > PF testpmd-> reset port 0 mirror-rule 0 >=20 > +Test Case3: Mirror Traffic between 2VMs with Pool down > +mirroring(Niantic not support) > +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > =3D=3D=3D=3D=3D=3D=3D=3D > +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > + > +Set up common 2VM prerequisites. > + > +Add one mirror rule that will mirror VM0 outcome traffic to VM1:: > + > + PF testpmd-> set port 0 mirror-rule 0 pool-mirror-down 0x1 dst-pool > + 1 on > + > +Make sure VM1 in receive only mode, VM0 send 32 packets, and verify the > +VM0 packets has been mirrored to VM1:: > + > + VF1 testpmd-> set fwd rxonly > + VF1 testpmd-> start > + VF0 testpmd-> start tx_first > + > +Note: don't let VF1 fwd packets since downlink mirror will mirror back > +the packets to received packets, which will be an infinite loop. > + > +After test need reset mirror rule:: > + > + PF testpmd-> reset port 0 mirror-rule 0 >=20 > -Test Case3: Mirror Traffic between 2VMs with Uplink mirroring > +Test Case4: Mirror Traffic between 2VMs with Uplink mirroring > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D >=20 > Set up common 2VM prerequisites. > @@ -166,7 +189,7 @@ After test need reset mirror rule:: >=20 > PF testpmd-> reset port 0 mirror-rule 0 >=20 > -Test Case4: Mirror Traffic between 2VMs with Downlink mirroring > +Test Case5: Mirror Traffic between 2VMs with Downlink mirroring > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D >=20 > Run testpmd on VM0 and VM1 and start traffic forward on the VM hosts:: > @@ -174,12 +197,11 @@ Run testpmd on VM0 and VM1 and start traffic > forward on the VM hosts:: > VF0 ./x86_64-default-linuxapp-gcc/app/testpmd -c f -n 4 -- -i > VF1 ./x86_64-default-linuxapp-gcc/app/testpmd -c f -n 4 -- -i >=20 > - > Add one mirror rule that will mirror VM0 outcome traffic to VM1:: >=20 > PF testpmd-> set port 0 mirror-rule 0 downlink-mirror dst-pool 1 on >=20 > -Make sure VM1 in receive only mode, VM0 send 16 packets, and verify the > VM0 > +Make sure VM1 in receive only mode, VM0 send 32 packets, and verify the > +VM0 > packets has been mirrored to VM1:: >=20 > VF1 testpmd-> set fwd rxonly > @@ -193,120 +215,129 @@ After test need reset mirror rule:: >=20 > PF testpmd-> reset port 0 mirror-rule 0 >=20 > -Test Case5: Mirror Traffic between VMs with Vlan mirroring > +Test Case6: Mirror Traffic between 2VMs with Vlan mirroring > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D >=20 > Set up common 2VM prerequisites. >=20 > -Add rx vlan-id 0 on VF0, add one mirror rule that will mirror VM0 income= - > traffic with specified vlan to VM1:: > +Generate a random number N of 1-4095, Add rx vlan-id N on VF0, add one > +mirror rule that will mirror VM0 income traffic with specified vlan to V= M1:: >=20 > - PF testpmd-> rx_vlan add 0 port 0 vf 0x1 > - PF testpmd-> set port 0 mirror-rule 0 vlan-mirror 0 dst-pool 1 on > + PF testpmd-> rx_vlan add N port 0 vf 0x1 > + PF testpmd-> set port 0 mirror-rule 0 vlan-mirror n dst-pool 1 on >=20 > -Send 10 packets with vlan-id0/vm0 MAC to VM0 and verify the packets has > been > +Send 10 packets with vlan-id N and VM0 MAC to VM0 and verify the > +packets has been > mirrored to VM1 and forwarded the packet. >=20 > -After test need reset mirror rule:: > - > - PF testpmd-> reset port 0 mirror-rule 0 > - > -Test Case6: Mirror Traffic between 2VMs with Vlan & Pool mirroring - > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > =3D=3D > - > -Set up common 2VM prerequisites. > - > -Add rx vlan-id 3 of VF1, and 2 mirror rules, one is VM0 income traffic t= o VM1, > -one is VM1 vlan income traffic to VM0:: > - > - PF testpmd-> rx_vlan add 3 port 0 vf 0x2 > - PF testpmd-> set port 0 mirror-rule 0 pool-mirror 0x1 dst-pool 1 on > - PF testpmd-> set port 0 mirror-rule 1 vlan-mirror 3 dst-pool 0 on > - > -Send 2 flows one by one, first 10 packets with VM0 mac, and the second 1= 00 > -packets with VM1 vlan and mac, and verify the first 10 packets has been = - > mirrored first to VM1, second 100 packets go to VM0 and the packets have > been -forwarded. > +Note: don't let VF1 fwd packets since vlan downlink mirror will mirror > +back the packets to received packets, which will be an infinite loop. >=20 > After test need reset mirror rule:: >=20 > PF testpmd-> reset port 0 mirror-rule 0 > - PF testpmd-> reset port 0 mirror-rule 1 >=20 > -Test Case7: Mirror Traffic between 2VMs with Uplink & Downlink mirroring= - > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > =3D=3D=3D=3D=3D=3D=3D=3D > +Test Case7: Mirror Traffic between 2VMs with up link mirroring & down > +link mirroring > +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > =3D=3D=3D=3D=3D=3D=3D=3D > +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D >=20 > Run testpmd on VM0 and VM1 and start traffic forward on the VM hosts:: >=20 > VF0 ./x86_64-default-linuxapp-gcc/app/testpmd -c f -n 4 -- -i > VF1 ./x86_64-default-linuxapp-gcc/app/testpmd -c f -n 4 -- -i >=20 > -Add 2 mirror rules that will mirror VM0 outcome and income traffic to VM= 1:: > +When mirroring only between two Vfs, pool up (or down) mirroring and up > +(or down) link mirroring lead to the same behavior, so we randomly choos= e > one way to mirror in both up and down directions. > +up link mirroring as below: > + 1. Pool up mirroring (Case 2) > + 2. Uplink port mirroring(Case 4) > +down link mirroring as below: > + 1. Pool down mirroring(Fortville only, Case 3) > + 2. Downlink port mirroring(Case 5) >=20 > - PF testpmd-> set port 0 mirror-rule 0 downlink-mirror dst-pool 1 on > - PF testpmd-> set port 0 mirror-rule 0 uplink-mirror dst-pool 1 on > +And 2 mirror rules, one is randomly selected up link mirroring, one is > +randomly selected down link mirroring(Niantic use Downlink port > +mirroring). The 2 mirror rules will mirroring > +VM0 income and outcome traffic to VM1. >=20 > -Make sure VM1 in receive only mode, VM0 first send 16 packets, and verif= y > the > -VM0 packets has been mirrored to VM1:: > +Make sure VM1 in receive only mode, Send 10 packets to VF0 with VF0 > +MAC,verify that all VF0 received packets and transmitted packets will mi= rror > to VF1, VF1 will receive 20 packets:: >=20 > + VF0 testpmd-> set fwd mac > + VF0 testpmd-> start > VF1 testpmd-> set fwd rxonly > VF1 testpmd-> start > - VF0 testpmd-> start tx_first >=20 > -Note: don't let VF1 fwd packets since downlink mirror will mirror back t= he > +Note: don't let VF1 fwd packets since vlan downlink mirror will mirror > +back the > packets to received packets, which will be an infinite loop. >=20 > -Send 10 packets to VF0 with VF0 MAC from ixia, verify that all VF0 recei= ved - > packets and transmitted packets will mirror to VF1:: > - > - VF0 testpmd-> stop > - VF0 testpmd-> start > - > After test need reset mirror rule:: >=20 > PF testpmd-> reset port 0 mirror-rule 0 > + PF testpmd-> reset port 0 mirror-rule 1 >=20 > -Test Case8: Mirror Traffic between 2VMs with Vlan & Pool & Uplink & > Downlink mirroring - > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > +Test Case8: Mirror Traffic between 2VMs with Vlan & with up link > +mirroring & down link mirroring > +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > =3D=3D=3D=3D=3D=3D=3D=3D > +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D >=20 > Run testpmd on VM0 and VM1 and start traffic forward on the VM hosts:: >=20 > VF0 ./x86_64-default-linuxapp-gcc/app/testpmd -c f -n 4 -- -i > VF1 ./x86_64-default-linuxapp-gcc/app/testpmd -c f -n 4 -- -i >=20 > +When mirroring only between two Vfs, pool up (or down) mirroring and up > +(or down) link mirroring lead to the same behavior, so we randomly choos= e > one way to mirror in both up and down directions. > +up link mirroring as below: > + 1. Pool up mirroring (Case 2) > + 2. Uplink port mirroring(Case 4) > +down link mirroring as below: > + 1. Pool down mirroring(Fortville only, Case 3) > + 2. Downlink port mirroring(Case 5) >=20 > -Add rx vlan-id 0 on VF0 and add 4 mirror rules:: > +And 2 mirror rules, one is randomly selected up link mirroring, one is > +randomly selected down link mirroring(Niantic use Downlink port > +mirroring). The 2 mirror rules will mirroring > +VM0 income and outcome traffic to VM1. >=20 > - PF testpmd-> reset port 0 mirror-rule 1 > - PF testpmd-> set port 0 mirror-rule 0 downlink-mirror dst-pool 1 on > - PF testpmd-> set port 0 mirror-rule 1 uplink-mirror dst-pool 1 on > - PF testpmd-> rx_vlan add 0 port 0 vf 0x2 > - PF testpmd-> set port 0 mirror-rule 2 vlan-mirror 0 dst-pool 0 on > - PF testpmd-> set port 0 mirror-rule 3 pool-mirror 0x1 dst-pool 1 on > +Generate a random number N of 1-4095, Add rx vlan-id N and a mirror rule= :: >=20 > -Make sure VM1 in receive only mode, VM0 first send 16 packets, and verif= y > the > -VM0 packets has been mirrored to VM1, VF1, RX, 16packets (downlink > mirror):: > + PF testpmd-> rx_vlan add N port 0 vf 0x2 > + PF testpmd-> set port 0 mirror-rule 2 vlan-mirror N dst-pool 0 on > + > +Note: Because of Hardware limitation, downlink-mirror and > +pool-mirror-down cannot coexist, uplink-mirror and pool-mirror-up cannot > coexist in Fortville. > + > +Fortville: Make sure VM0 in receive only mode:: >=20 > VF1 testpmd-> set fwd rxonly > VF1 testpmd-> start > - VF0 testpmd-> start tx_first > + VF0 testpmd-> set fwd mac > + VF0 testpmd-> start >=20 > -Note: don't let VF1 fwd packets since downlink mirror will mirror back t= he - > packets to received packets, which will be an infinite loop. > +Send 1 packet with VM1 vlan id N and mac, and verify that VF0 have 1 RX > +packet(vlan mirror), and VF1 have 2 RX packets(RX and down link mirror). >=20 > -Send 1 packet to VF0 with VF0 MAC from ixia, check if VF0 RX 1 packet an= d > TX 1 -packet, and VF1 has 2 packets mirror from VF0(uplink > mirror/downlink/pool):: > +Send 1 packet to VF0 with VF0 MAC, check if VF0 RX 1 packet and TX 1 > +packet, and VF1 has 1 packets mirror from VF0(uplink mirror) at least. >=20 > - VF0 testpmd-> stop > - VF0 testpmd-> set fwd mac > - VF0 testpmd-> start > +Niantic add rules as below:: > + > + PF testpmd> set port 0 mirror-rule 0 pool-mirror-up 0x1 dst-pool 1 on > + PF testpmd> rx_vlan add N port 0 vf 0x2 > + PF testpmd> set port 0 mirror-rule 2 vlan-mirror N dst-pool 0 on > + PF testpmd> set port 0 mirror-rule 1 downlink-mirror dst-pool 1 on > + PF testpmd> set port 0 mirror-rule 3 uplink-mirror dst-pool 1 on > + > +Note: don't let VF0 fwd packets since downlink vlan mirror will mirror > +back the packets to received packets, which will be an infinite loop. >=20 > -Send 1 packet with VM1 vlan id and mac, and verify that VF0 have 1 RX > packet, 1 -TX packet, and VF1 have 2 packets(downlink mirror):: > +Make sure VM0 in receive only mode, VM0 first send 32 packets, and > +verify the > +VM0 packets has been mirrored to VM1, VF1 RX 32 packets (down link > mirror):: >=20 > - VF0 testpmd-> stop > + VF1 testpmd-> set fwd rxonly > + VF1 testpmd-> start > VF0 testpmd-> set fwd rxonly > - VF0 testpmd-> start > + VF0 testpmd-> start tx_first > + > +Send 1 packet with VM1 vlan id N and mac, and verify that VF0 have 1 RX > packet(vlan mirror). > + > +Send 1 packet to VF0 with VF0 MAC, check if VF0 RX 1 packet and TX 1 > +packet, and VF1 has 2 packets mirror from VF0(up link mirror). >=20 > After test need reset mirror rule:: >=20 > @@ -315,7 +346,6 @@ After test need reset mirror rule:: > PF testpmd-> reset port 0 mirror-rule 2 > PF testpmd-> reset port 0 mirror-rule 3 >=20 > - > Test Case9: Add Multi exact MAC address on VF > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D >=20 > -- > 2.21.0.windows.1