Message ID | 1602711375-10685-1-git-send-email-timothy.mcdaniel@intel.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 2A074A04DB; Wed, 14 Oct 2020 23:34:24 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 61C271BF7D; Wed, 14 Oct 2020 23:34:22 +0200 (CEST) Received: from mga18.intel.com (mga18.intel.com [134.134.136.126]) by dpdk.org (Postfix) with ESMTP id 7A51C1BED2 for <dev@dpdk.org>; Wed, 14 Oct 2020 23:34:20 +0200 (CEST) IronPort-SDR: GZzv+IUiqpeeM3K5sMS/udbV4aSNvn35fpSGfd91DD9RXe03zTlFR+1wUbqyC07/Jovq7SRSlo CWoYmFJlaoTQ== X-IronPort-AV: E=McAfee;i="6000,8403,9774"; a="154029100" X-IronPort-AV: E=Sophos;i="5.77,376,1596524400"; d="scan'208";a="154029100" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga005.fm.intel.com ([10.253.24.32]) by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 14 Oct 2020 14:34:15 -0700 IronPort-SDR: nHXCyScUS/vgFUVMaXlN0eVFWel8QhfhNncO/77shtuCpQmbooYmhAlXOpEgpg2g+aNbYHRL4C +L9mo7J0xaxQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.77,376,1596524400"; d="scan'208";a="521592036" Received: from txasoft-yocto.an.intel.com ([10.123.72.192]) by fmsmga005.fm.intel.com with ESMTP; 14 Oct 2020 14:34:12 -0700 From: Timothy McDaniel <timothy.mcdaniel@intel.com> To: Cc: dev@dpdk.org, erik.g.carrillo@intel.com, gage.eads@intel.com, harry.van.haaren@intel.com, hemant.agrawal@nxp.com Date: Wed, 14 Oct 2020 16:36:13 -0500 Message-Id: <1602711375-10685-1-git-send-email-timothy.mcdaniel@intel.com> X-Mailer: git-send-email 1.7.10 In-Reply-To: <1599843507-19970-2-git-send-email-timothy.mcdaniel@intel.com> References: <1599843507-19970-2-git-send-email-timothy.mcdaniel@intel.com> Subject: [dpdk-dev] [PATCH 0/2] Eventdev ABI changes for DLB/DLB2 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 |
Eventdev ABI changes for DLB/DLB2
|
|
Message
Timothy McDaniel
Oct. 14, 2020, 9:36 p.m. UTC
This series implements the eventdev ABI changes required by the DLB and DLB2 PMDs. This ABI change was announced in the 20.08 release notes [1]. This patch was initially part of the V1 DLB PMD patchset. The DLB hardware does not conform exactly to the eventdev interface. 1) It has a limit on the number of queues that may be linked to a port. 2) Some ports are further restricted to a maximum of 1 linked queue. 3) It does not (currently) have the ability to carry the flow_id as part of the event (QE) payload. Due to the above, we would like to propose the following enhancements. 1) Add new fields to the rte_event_dev_info struct. These fields allow the device to advertise its capabilities so that applications can take the appropriate actions based on those capabilities. 2) Add a new field to the rte_event_dev_config struct. This field allows the application to specify how many of its ports are limited to a single link, or will be used in single link mode. 3) Replace the dedicated implicit_release_disabled field with a bit field of explicit port capabilities. The implicit_release_disable functionality is assigned to one bit, and a port-is-single-link-only attribute is assigned to another, with the remaining bits available for future assignment. Note that it was requested that we split this app/test changes out from the eventdev ABI patch. As a result, neither of these patches will build without the other also being applied. Major changes since V1: Reworded commit message, as requested Fixed errors reported by clang Testing showed no performance impact due to the flow_id template code added to test app. [1] http://mails.dpdk.org/archives/dev/2020-August/177261.html Timothy McDaniel (2): eventdev: eventdev: express DLB/DLB2 PMD constraints eventdev: update app and examples for new eventdev ABI Timothy McDaniel (2): eventdev: eventdev: express DLB/DLB2 PMD constraints eventdev: update app and examples for new eventdev ABI app/test-eventdev/evt_common.h | 11 ++++ app/test-eventdev/test_order_atq.c | 28 ++++++--- app/test-eventdev/test_order_common.c | 1 + app/test-eventdev/test_order_queue.c | 29 +++++++--- app/test/test_eventdev.c | 4 +- drivers/event/dpaa/dpaa_eventdev.c | 3 +- drivers/event/dpaa2/dpaa2_eventdev.c | 5 +- drivers/event/dsw/dsw_evdev.c | 3 +- drivers/event/octeontx/ssovf_evdev.c | 5 +- drivers/event/octeontx2/otx2_evdev.c | 3 +- drivers/event/opdl/opdl_evdev.c | 3 +- drivers/event/skeleton/skeleton_eventdev.c | 5 +- drivers/event/sw/sw_evdev.c | 8 ++- drivers/event/sw/sw_evdev_selftest.c | 6 +- .../eventdev_pipeline/pipeline_worker_generic.c | 6 +- examples/eventdev_pipeline/pipeline_worker_tx.c | 1 + examples/l2fwd-event/l2fwd_event_generic.c | 7 ++- examples/l2fwd-event/l2fwd_event_internal_port.c | 6 +- examples/l3fwd/l3fwd_event_generic.c | 7 ++- examples/l3fwd/l3fwd_event_internal_port.c | 6 +- lib/librte_eventdev/rte_event_eth_tx_adapter.c | 2 +- lib/librte_eventdev/rte_eventdev.c | 66 +++++++++++++++++++--- lib/librte_eventdev/rte_eventdev.h | 51 ++++++++++++++--- lib/librte_eventdev/rte_eventdev_pmd_pci.h | 1 - lib/librte_eventdev/rte_eventdev_trace.h | 7 ++- lib/librte_eventdev/rte_eventdev_version.map | 4 +- 26 files changed, 214 insertions(+), 64 deletions(-)
Comments
On Thu, Oct 15, 2020 at 3:04 AM Timothy McDaniel <timothy.mcdaniel@intel.com> wrote: > > This series implements the eventdev ABI changes required by > the DLB and DLB2 PMDs. This ABI change was announced in the > 20.08 release notes [1]. This patch was initially part of > the V1 DLB PMD patchset. Hi @McDaniel, Timothy , Following things missing in this patch set before it needs to merge: - Update doc/guides/rel_notes/release_20_11.rst for "API Changes" and/or "ABI Changes" section - Update doc/guides/rel_notes/deprecation.rst to remove the this patch specific depreciation note - Merge patch 1 and 2 to a single patch it has a compilation error if we build patch1 alone - Update the git commit to give more data on the combined patch. - rebase the patch to http://browse.dpdk.org/next/dpdk-next-eventdev/, it still git-am apply issues. After fixing the above, I will merge this RC1. Please send ASAP. > > The DLB hardware does not conform exactly to the eventdev interface. > 1) It has a limit on the number of queues that may be linked to a port. > 2) Some ports are further restricted to a maximum of 1 linked queue. > 3) It does not (currently) have the ability to carry the flow_id as part > of the event (QE) payload. > > Due to the above, we would like to propose the following enhancements. > > 1) Add new fields to the rte_event_dev_info struct. These fields allow > the device to advertise its capabilities so that applications can take > the appropriate actions based on those capabilities. > > 2) Add a new field to the rte_event_dev_config struct. This field allows > the application to specify how many of its ports are limited to a single > link, or will be used in single link mode. > > 3) Replace the dedicated implicit_release_disabled field with a bit field > of explicit port capabilities. The implicit_release_disable functionality > is assigned to one bit, and a port-is-single-link-only attribute is > assigned to another, with the remaining bits available for future > assignment. > > Note that it was requested that we split this app/test > changes out from the eventdev ABI patch. As a result, > neither of these patches will build without the other > also being applied. > > Major changes since V1: > Reworded commit message, as requested > Fixed errors reported by clang > > Testing showed no performance impact due to the flow_id template code > added to test app. > > [1] http://mails.dpdk.org/archives/dev/2020-August/177261.html > > > Timothy McDaniel (2): > eventdev: eventdev: express DLB/DLB2 PMD constraints > eventdev: update app and examples for new eventdev ABI > > > > Timothy McDaniel (2): > eventdev: eventdev: express DLB/DLB2 PMD constraints > eventdev: update app and examples for new eventdev ABI > > app/test-eventdev/evt_common.h | 11 ++++ > app/test-eventdev/test_order_atq.c | 28 ++++++--- > app/test-eventdev/test_order_common.c | 1 + > app/test-eventdev/test_order_queue.c | 29 +++++++--- > app/test/test_eventdev.c | 4 +- > drivers/event/dpaa/dpaa_eventdev.c | 3 +- > drivers/event/dpaa2/dpaa2_eventdev.c | 5 +- > drivers/event/dsw/dsw_evdev.c | 3 +- > drivers/event/octeontx/ssovf_evdev.c | 5 +- > drivers/event/octeontx2/otx2_evdev.c | 3 +- > drivers/event/opdl/opdl_evdev.c | 3 +- > drivers/event/skeleton/skeleton_eventdev.c | 5 +- > drivers/event/sw/sw_evdev.c | 8 ++- > drivers/event/sw/sw_evdev_selftest.c | 6 +- > .../eventdev_pipeline/pipeline_worker_generic.c | 6 +- > examples/eventdev_pipeline/pipeline_worker_tx.c | 1 + > examples/l2fwd-event/l2fwd_event_generic.c | 7 ++- > examples/l2fwd-event/l2fwd_event_internal_port.c | 6 +- > examples/l3fwd/l3fwd_event_generic.c | 7 ++- > examples/l3fwd/l3fwd_event_internal_port.c | 6 +- > lib/librte_eventdev/rte_event_eth_tx_adapter.c | 2 +- > lib/librte_eventdev/rte_eventdev.c | 66 +++++++++++++++++++--- > lib/librte_eventdev/rte_eventdev.h | 51 ++++++++++++++--- > lib/librte_eventdev/rte_eventdev_pmd_pci.h | 1 - > lib/librte_eventdev/rte_eventdev_trace.h | 7 ++- > lib/librte_eventdev/rte_eventdev_version.map | 4 +- > 26 files changed, 214 insertions(+), 64 deletions(-) > > -- > 2.6.4 >
> -----Original Message----- > From: Jerin Jacob <jerinjacobk@gmail.com> > Sent: Thursday, October 15, 2020 9:26 AM > To: McDaniel, Timothy <timothy.mcdaniel@intel.com> > Cc: dpdk-dev <dev@dpdk.org>; Carrillo, Erik G <erik.g.carrillo@intel.com>; Eads, > Gage <gage.eads@intel.com>; Van Haaren, Harry > <harry.van.haaren@intel.com>; Hemant Agrawal <hemant.agrawal@nxp.com> > Subject: Re: [dpdk-dev] [PATCH 0/2] Eventdev ABI changes for DLB/DLB2 > > On Thu, Oct 15, 2020 at 3:04 AM Timothy McDaniel > <timothy.mcdaniel@intel.com> wrote: > > > > This series implements the eventdev ABI changes required by > > the DLB and DLB2 PMDs. This ABI change was announced in the > > 20.08 release notes [1]. This patch was initially part of > > the V1 DLB PMD patchset. > > Hi @McDaniel, Timothy , > > Following things missing in this patch set before it needs to merge: > - Update doc/guides/rel_notes/release_20_11.rst for "API Changes" > and/or "ABI Changes" section > - Update doc/guides/rel_notes/deprecation.rst to remove the this patch > specific depreciation note > - Merge patch 1 and 2 to a single patch it has a compilation error if > we build patch1 alone > - Update the git commit to give more data on the combined patch. > - rebase the patch to http://browse.dpdk.org/next/dpdk-next-eventdev/, > it still git-am apply issues. > > After fixing the above, I will merge this RC1. Please send ASAP. > I will get on this straight away. Thanks.