mbox series

[0/4] support protocol based buffer split

Message ID 20220812181552.2908067-1-yuanx.wang@intel.com (mailing list archive)
Headers show
Series support protocol based buffer split | expand

Message

Yuan Wang Aug. 12, 2022, 6:15 p.m. UTC
Protocol type based buffer split consists of splitting a received packet
into several separate segments based on the packet content. It is useful
in some scenarios, such as GPU acceleration. The splitting will help to
enable true zero copy and hence improve the performance significantly.

This patchset aims to support protocol header split based on current buffer
split. When Rx queue is configured with RTE_ETH_RX_OFFLOAD_BUFFER_SPLIT
offload and corresponding protocol, packets received will be directly split
into different mempools. 

Yuan Wang (4):
  ethdev: introduce protocol header API
  ethdev: introduce protocol hdr based buffer split
  app/testpmd: add rxhdrs commands and parameters
  net/ice: support buffer split in Rx path

 app/test-pmd/cmdline.c                 | 123 +++++++++++++-
 app/test-pmd/config.c                  |  70 ++++++++
 app/test-pmd/parameters.c              |  16 +-
 app/test-pmd/testpmd.c                 |   6 +-
 app/test-pmd/testpmd.h                 |   6 +
 doc/guides/rel_notes/release_22_11.rst |  14 ++
 drivers/net/ice/ice_ethdev.c           |  35 +++-
 drivers/net/ice/ice_rxtx.c             | 220 +++++++++++++++++++++----
 drivers/net/ice/ice_rxtx.h             |  16 ++
 drivers/net/ice/ice_rxtx_vec_common.h  |   3 +
 lib/ethdev/ethdev_driver.h             |  15 ++
 lib/ethdev/rte_ethdev.c                |  88 ++++++++--
 lib/ethdev/rte_ethdev.h                |  41 ++++-
 lib/ethdev/version.map                 |   3 +
 14 files changed, 606 insertions(+), 50 deletions(-)