[dpdk-dev] [PATCH 0/8] net/vmxnet3: fix offload issues

Didier Pallard didier.pallard at 6wind.com
Wed Mar 28 17:43:41 CEST 2018


This patchset fixes several issues found in vmxnet3 driver
when enabling LRO offload support:
- Rx offload information are not correctly gathered in
  multisegmented packets, leading to inconsistent
  packet type and Rx offload bits in resulting mbuf
- MSS recovery from offload information is not done
  thus LRO mbufs do not contain a correct tso_segsz value.
- MSS value is not propagated by the host on some
  hypervisor versions (6.0 for example)
- If two small TCP segments are aggregated in a single
  mbuf, an empty segment that only contains offload
  information is appended to this segment, and is
  propagated as is to the application. But if the application
  sends back to the hypervisor a mbuf with an empty
  segment, this mbuf is dropped by the hypervisor.


Didier Pallard (8):
  net: export IPv6 header extensions skip function
  net/vmxnet3: return unknown IPv4 extension len ptype
  net/vmxnet3: gather offload data on first and last segment
  net/vmxnet3: fix Rx offload information in multiseg packets
  net/vmxnet3: complete Rx offloads support
  net/vmxnet3: guess mss if not provided in LRO mode
  net/vmxnet3: ignore emtpy segments in reception
  net/vmxnet3: skip empty segments in transmission

 drivers/net/vmxnet3/Makefile            |   1 +
 drivers/net/vmxnet3/base/vmxnet3_defs.h |  27 ++++-
 drivers/net/vmxnet3/vmxnet3_ethdev.c    |   2 +
 drivers/net/vmxnet3/vmxnet3_ethdev.h    |   1 +
 drivers/net/vmxnet3/vmxnet3_rxtx.c      | 200 ++++++++++++++++++++++++++------
 lib/librte_net/Makefile                 |   1 +
 lib/librte_net/rte_net.c                |  21 ++--
 lib/librte_net/rte_net.h                |  27 +++++
 lib/librte_net/rte_net_version.map      |   1 +
 9 files changed, 238 insertions(+), 43 deletions(-)

-- 
2.11.0



More information about the dev mailing list