[dpdk-dev] [PATCH v7 0/5] Support VxLAN & NVGRE checksum off-load on X550

Liu, Yong yong.liu at intel.com
Fri Mar 4 10:24:46 CET 2016


Sorry, sent to incorrect mail thread. Please ignore this tested-by email.

> -----Original Message-----
> From: Liu, Yong
> Sent: Friday, March 04, 2016 1:45 PM
> To: Lu, Wenzhuo; dev at dpdk.org
> Subject: RE: [dpdk-dev] [PATCH v7 0/5] Support VxLAN & NVGRE checksum
> off-load on X550
> 
> Tested-by: Yong Liu <yong.liu at intel.com>
> 
> - 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=igb_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=/home/image/fedora20.img -vnc :1
> \
>     -device pci-assign,host=03:10.0 \
>     -device pci-assign,host=03:10.2
>   Login vm0 and them bind VF devices to igb_uio driver.
>     ./tools/dpdk_nic_bind.py --bind=igb_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=0x0
>     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
> 
>     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
> on 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
> on PF
> 
>     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
> 
> - 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 at dpdk.org] On Behalf Of Wenzhuo Lu
> > Sent: Friday, March 04, 2016 10:35 AM
> > To: dev at dpdk.org
> > Subject: [dpdk-dev] [PATCH v7 0/5] Support VxLAN & NVGRE checksum off-
> > load on X550
> >
> > This patch set add the VxLAN & NVGRE checksum off-load support.
> > Both RX and TX checksum off-load can be used for VxLAN & NVGRE.
> > And the VxLAN port can be set, it's implemented in this patch
> > set either.
> >
> > v2:
> > - Update release note.
> >
> > v3:
> > - Update RX/TX offload capability.
> > - Reuse PKT_RX_EIP_CKSUM_BAD but not add a new one.
> > - Correct the tunnel len for TX, and remove the useless out_l2_len.
> > - Don't set the tunnel type for TX, and remove the unused ol_flag_nvgre.
> >
> > v4:
> > - Fix the issue that not setting the MAC length correctly.
> >
> > v5:
> > - Change the behavior of VxLAN port add/del to make it align with i40e.
> >
> > v6:
> > - Fix x86_64-native-linuxapp-gcc-shared compile error.
> >
> > v7:
> > - Change the return value from hardcode to macro.
> >
> > Wenzhuo Lu (5):
> >   lib/librte_ether: change function name of tunnel port config
> >   i40e: rename the tunnel port config functions
> >   ixgbe: support UDP tunnel port config
> >   ixgbe: support VxLAN &  NVGRE RX checksum off-load
> >   ixgbe: support VxLAN &  NVGRE TX checksum off-load
> >
> >  app/test-pmd/cmdline.c                 |   6 +-
> >  doc/guides/rel_notes/release_16_04.rst |   9 +++
> >  drivers/net/i40e/i40e_ethdev.c         |  22 +++---
> >  drivers/net/ixgbe/ixgbe_ethdev.c       | 131
> > +++++++++++++++++++++++++++++++++
> >  drivers/net/ixgbe/ixgbe_rxtx.c         |  67 ++++++++++++++---
> >  drivers/net/ixgbe/ixgbe_rxtx.h         |   6 +-
> >  examples/tep_termination/vxlan_setup.c |   2 +-
> >  lib/librte_ether/rte_ethdev.c          |  45 +++++++++++
> >  lib/librte_ether/rte_ethdev.h          |  19 +++++
> >  lib/librte_ether/rte_ether_version.map |   2 +
> >  lib/librte_mbuf/rte_mbuf.c             |   2 +-
> >  lib/librte_mbuf/rte_mbuf.h             |   2 +-
> >  12 files changed, 285 insertions(+), 28 deletions(-)
> >
> > Acked-by: Konstantin Ananyev <konstantin.ananyev at intel.com>
> >
> > --
> > 1.9.3



More information about the dev mailing list