[dpdk-dev] [PATCH v4 0/5] introduce support for hairpin between two ports

Bing Zhao bingz at nvidia.com
Tue Oct 13 18:19:12 CEST 2020


The patches contain the following changes:
1. new APIs to bind and unbind hairpin ports in manual binding mode.
2. new API to get the hairpin peer ports list.
3. new internal APIs for PMD to pass the queue information and
   configure the queue pair.
4. new attribute members in the hairpin queue configuraiton structure
   to specify the binding mode and enable explicit TX flow mode.
5. Testpmd support to configure the hairpin modes for two ports
   hairpin verification.
6. documents update.

---
v4:
1. squash documents update into patch
2. add more description of the hairpin conf attributes
v3:
1. add length to protect the pointer to the array from getting corrupted
2. change the direction from bool to unsigned int
v2:
1. add documents update
2. remove all peer ports logic from rte API
3. conf structure optimizing
4. new API to get the peer ports and testpmd change to support
   hot-plug / unplug case
---

Bing Zhao (5):
  ethdev: add hairpin bind and unbind APIs
  ethdev: add new attributes to hairpin config
  ethdev: add API to get hairpin peer ports list
  ethdev: add APIs for hairpin queue operation
  app/testpmd: change hairpin queues setup

 app/test-pmd/parameters.c                |  15 +++
 app/test-pmd/testpmd.c                   | 125 ++++++++++++++++++++-
 app/test-pmd/testpmd.h                   |   2 +
 doc/guides/prog_guide/rte_flow.rst       |   3 +
 doc/guides/rel_notes/release_20_11.rst   |  11 ++
 doc/guides/testpmd_app_ug/run_app.rst    |   8 ++
 lib/librte_ethdev/rte_ethdev.c           | 133 +++++++++++++++++++++-
 lib/librte_ethdev/rte_ethdev.h           | 107 +++++++++++++++++-
 lib/librte_ethdev/rte_ethdev_driver.h    | 187 +++++++++++++++++++++++++++++++
 lib/librte_ethdev/rte_ethdev_version.map |   6 +
 10 files changed, 588 insertions(+), 9 deletions(-)

-- 
1.8.3.1



More information about the dev mailing list