Message ID | 1602767335-433464-1-git-send-email-bingz@nvidia.com (mailing list archive) |
---|---|
Headers |
Return-Path: <dev-bounces@dpdk.org> X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 64412A04DB; Thu, 15 Oct 2020 15:09:06 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 400AC1E8BF; Thu, 15 Oct 2020 15:09:05 +0200 (CEST) Received: from git-send-mailer.rdmz.labs.mlnx (unknown [37.142.13.130]) by dpdk.org (Postfix) with ESMTP id 483501C2AA for <dev@dpdk.org>; Thu, 15 Oct 2020 15:09:02 +0200 (CEST) From: Bing Zhao <bingz@nvidia.com> To: thomas@monjalon.net, orika@nvidia.com, ferruh.yigit@intel.com, arybchenko@solarflare.com, mdr@ashroe.eu, nhorman@tuxdriver.com, bernard.iremonger@intel.com, beilei.xing@intel.com, wenzhuo.lu@intel.com Cc: dev@dpdk.org Date: Thu, 15 Oct 2020 21:08:50 +0800 Message-Id: <1602767335-433464-1-git-send-email-bingz@nvidia.com> X-Mailer: git-send-email 2.5.5 In-Reply-To: <1601511962-21532-1-git-send-email-bingz@nvidia.com> References: <1601511962-21532-1-git-send-email-bingz@nvidia.com> Subject: [dpdk-dev] [PATCH v6 0/5] introduce support for hairpin between two ports X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions <dev.dpdk.org> List-Unsubscribe: <https://mails.dpdk.org/options/dev>, <mailto:dev-request@dpdk.org?subject=unsubscribe> List-Archive: <http://mails.dpdk.org/archives/dev/> List-Post: <mailto:dev@dpdk.org> List-Help: <mailto:dev-request@dpdk.org?subject=help> List-Subscribe: <https://mails.dpdk.org/listinfo/dev>, <mailto:dev-request@dpdk.org?subject=subscribe> Errors-To: dev-bounces@dpdk.org Sender: "dev" <dev-bounces@dpdk.org> |
Series |
introduce support for hairpin between two ports
|
|
Message
Bing Zhao
Oct. 15, 2020, 1:08 p.m. UTC
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. --- v6: 1. Coding style updates 2. Using "Rx" & "Tx" instead of the capital formats v5: 1. Change EINVAL to ENODEV if port id is invalid 2. Description fixes and other minor changes 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 | 12 ++ doc/guides/testpmd_app_ug/run_app.rst | 8 ++ lib/librte_ethdev/rte_ethdev.c | 133 +++++++++++++++++++++- lib/librte_ethdev/rte_ethdev.h | 109 +++++++++++++++++- lib/librte_ethdev/rte_ethdev_driver.h | 186 +++++++++++++++++++++++++++++++ lib/librte_ethdev/rte_ethdev_version.map | 6 + 10 files changed, 590 insertions(+), 9 deletions(-)
Comments
On 10/15/2020 2:08 PM, Bing Zhao wrote: > 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. > > --- > v6: > 1. Coding style updates > 2. Using "Rx" & "Tx" instead of the capital formats > v5: > 1. Change EINVAL to ENODEV if port id is invalid > 2. Description fixes and other minor changes > 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 > Series applied to dpdk-next-net/main, thanks.
Hi Ferruh, > -----Original Message----- > From: Ferruh Yigit <ferruh.yigit@intel.com> > Sent: Friday, October 16, 2020 7:03 AM > To: Bing Zhao <bingz@nvidia.com>; NBU-Contact-Thomas Monjalon > <thomas@monjalon.net>; Ori Kam <orika@nvidia.com>; > arybchenko@solarflare.com; mdr@ashroe.eu; nhorman@tuxdriver.com; > bernard.iremonger@intel.com; beilei.xing@intel.com; > wenzhuo.lu@intel.com > Cc: dev@dpdk.org > Subject: Re: [PATCH v6 0/5] introduce support for hairpin between > two ports > > External email: Use caution opening links or attachments > > > On 10/15/2020 2:08 PM, Bing Zhao wrote: > > 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. > > > > --- > > v6: > > 1. Coding style updates > > 2. Using "Rx" & "Tx" instead of the capital formats > > v5: > > 1. Change EINVAL to ENODEV if port id is invalid 2. Description > fixes > > and other minor changes > > 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 > > > > Series applied to dpdk-next-net/main, thanks. Many thanks for your help. BR. Bing