DPDK patches and discussions
 help / color / mirror / Atom feed
From: Jerin Jacob <jerinjacobk@gmail.com>
To: Abdullah Sevincer <abdullah.sevincer@intel.com>
Cc: dev@dpdk.org, jerinj@marvell.com, bruce.richardson@intel.com,
	 pravin.pathak@intel.com, mattias.ronnblom@ericsson.com,
	 manish.aggarwal@intel.com
Subject: Re: [PATCH v17 1/3] eventdev: add support for independent enqueue
Date: Mon, 7 Oct 2024 12:49:43 +0530	[thread overview]
Message-ID: <CALBAE1OHFQj8cStxeNfgG0MRF+JP0bPBbSsBrRB62RdM8W7eHw@mail.gmail.com> (raw)
In-Reply-To: <20241007020052.138760-2-abdullah.sevincer@intel.com>

On Mon, Oct 7, 2024 at 7:31 AM Abdullah Sevincer
<abdullah.sevincer@intel.com> wrote:
>
> Support for independent enqueue feature and updates Event Device
> and PMD feature list.
>
> A new capability RTE_EVENT_DEV_CAP_INDEPENDENT_ENQ is introduced. It
> allows out-of-order enqueuing of RTE_EVENT_OP_FORWARD or RELEASE type
> events on an event port where this capability is enabled.
>
> To use this capability applications need to set flag
> RTE_EVENT_PORT_CFG_INDEPENDENT_ENQ during port setup only if the
> capability RTE_EVENT_DEV_CAP_INDEPENDENT_ENQ exists.
>
> Signed-off-by: Abdullah Sevincer <abdullah.sevincer@intel.com>
> Acked-by: Mattias Rönnblom <mattias.ronnblom@ericsson.com>
> ---
>  doc/guides/eventdevs/features/default.ini   |  1 +
>  doc/guides/eventdevs/features/dlb2.ini      |  1 +
>  doc/guides/prog_guide/eventdev/eventdev.rst | 27 ++++++++++++++++++
>  doc/guides/rel_notes/release_24_11.rst      |  8 ++++++
>  lib/eventdev/rte_eventdev.h                 | 31 +++++++++++++++++++++
>  5 files changed, 68 insertions(+)
>
> diff --git a/doc/guides/eventdevs/features/default.ini b/doc/guides/eventdevs/features/default.ini
> index 1cc4303fe5..7c4ee99238 100644
> --- a/doc/guides/eventdevs/features/default.ini
> +++ b/doc/guides/eventdevs/features/default.ini
> @@ -22,6 +22,7 @@ carry_flow_id              =
>  maintenance_free           =
>  runtime_queue_attr         =
>  profile_links              =
> +independent_enq            =
>
>  ;
>  ; Features of a default Ethernet Rx adapter.
> diff --git a/doc/guides/eventdevs/features/dlb2.ini b/doc/guides/eventdevs/features/dlb2.ini


Why adding dlb2.ini update in 1/3. Move to 2/3.
Also add the same for DSW in 3/3.


> index 7b80286927..c7193b47c1 100644
> --- a/doc/guides/eventdevs/features/dlb2.ini
> +++ b/doc/guides/eventdevs/features/dlb2.ini
> @@ -15,6 +15,7 @@ implicit_release_disable   = Y
>  runtime_port_link          = Y
>  multiple_queue_port        = Y
>  maintenance_free           = Y
> +independent_enq            = Y
>
>  [Eth Rx adapter Features]
>
> diff --git a/doc/guides/prog_guide/eventdev/eventdev.rst b/doc/guides/prog_guide/eventdev/eventdev.rst
> index fb6dfce102..ab53fe4e6c 100644
> --- a/doc/guides/prog_guide/eventdev/eventdev.rst
> +++ b/doc/guides/prog_guide/eventdev/eventdev.rst
> @@ -472,6 +472,33 @@ A flush callback can be passed to the function to handle any outstanding events.
>
>          Invocation of this API does not affect the existing port configuration.
>
> +Independent Enqueue Capability
> +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> +
> +This capability applies to eventdev devices that expects all forwarded events to be
> +enqueued in the same order as they are dequeued. For dropped events, their
> +releases should come at the same location as the original event was expected.
> +The eventdev device has this restriction as it uses the order to retrieve information about
> +the original event that was sent to the CPU. This contains information like atomic
> +flow ID to release the flow lock and ordered events sequence number to restore the
> +original order.
> +
> +This capability only matters to eventdevs supporting burst mode. On ports where
> +the application is going to change enqueue order,
> +``RTE_EVENT_PORT_CFG_INDEPENDENT_ENQ`` support should be enabled.
> +
> +Example code to inform PMD that the application plans to use independent enqueue
> +order on a port:
> +
> +    .. code-block:: c
> +
> +       if (capability & RTE_EVENT_DEV_CAP_INDEPENDENT_ENQ)
> +         port_config = port_config | RTE_EVENT_PORT_CFG_INDEPENDENT_ENQ;
> +

The below section does not have any code. It is an orphan section.
Move _below section_(only below) along with code in 2/3 patch
to doc/guides/eventdevs/dlb2.rst  as it is not specific generic.

> +This code example enables enqueue event reordering inside PMD before the events
> +are sent to the hardware. If the application is not going to change the enqueue
> +order, this flag should not be enabled to get better performance.

PLEASE PAY SOME ATTENTION before sending the next version. I am
repeating the same.

  reply	other threads:[~2024-10-07  7:20 UTC|newest]

Thread overview: 99+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-06-21 20:12 [PATCH v1 0/2] DLB Enqueue Reorder Support Abdullah Sevincer
2024-06-21 20:12 ` [PATCH v1 1/2] event/dlb2: add support for enqueue reordering Abdullah Sevincer
2024-06-21 20:51   ` [PATCH v2 0/2] DLB Enqueue Reorder Support Abdullah Sevincer
2024-06-21 20:51     ` [PATCH v2 1/2] event/dlb2: add support for enqueue reordering Abdullah Sevincer
2024-06-21 20:51     ` [PATCH v2 2/2] eventdev: add support for enqueue reorder Abdullah Sevincer
2024-06-21 22:24   ` [PATCH v3 0/2] DLB Enqueue Reorder Support Abdullah Sevincer
2024-06-21 22:24     ` [PATCH v3 1/2] event/dlb2: add support for enqueue reordering Abdullah Sevincer
2024-06-21 22:24     ` [PATCH v3 2/2] eventdev: add support for enqueue reorder Abdullah Sevincer
2024-06-24  8:28       ` Jerin Jacob
2024-06-26 18:31         ` Sevincer, Abdullah
2024-06-27 13:13           ` Jerin Jacob
2024-07-01  8:24       ` Mattias Rönnblom
2024-07-01  8:50       ` Mattias Rönnblom
2024-07-02 17:25         ` Pathak, Pravin
2024-07-11  3:20           ` Pathak, Pravin
2024-07-10  1:20       ` [PATCH v4 0/3] Independent Enqueue Support Abdullah Sevincer
2024-07-10  1:20         ` [PATCH v4 1/3] event/dlb2: add support for independent enqueue Abdullah Sevincer
2024-07-10  1:20         ` [PATCH v4 2/3] eventdev: " Abdullah Sevincer
2024-07-10  1:20         ` [PATCH v4 3/3] event/dsw: add capability " Abdullah Sevincer
2024-07-10  6:33       ` [PATCH v5 0/3] Independent Enqueue Support Abdullah Sevincer
2024-07-10  6:33         ` [PATCH v5 1/3] event/dlb2: add support for independent enqueue Abdullah Sevincer
2024-07-10  6:33         ` [PATCH v5 2/3] eventdev: " Abdullah Sevincer
2024-07-10  6:33         ` [PATCH v5 3/3] event/dsw: add capability " Abdullah Sevincer
2024-07-11 19:54       ` [PATCH v6 0/3] Independent Enqueue Support Abdullah Sevincer
2024-07-11 19:54         ` [PATCH v6 1/3] event/dlb2: add support for independent enqueue Abdullah Sevincer
2024-07-11 19:54         ` [PATCH v6 2/3] eventdev: " Abdullah Sevincer
2024-07-23  6:40           ` Mattias Rönnblom
2024-07-29 13:49             ` Pathak, Pravin
2024-08-13 15:00               ` Sevincer, Abdullah
2024-08-20 16:48                 ` Sevincer, Abdullah
2024-08-12 18:41           ` [PATCH v7 0/3] Independent Enqueue Support Abdullah Sevincer
2024-08-12 18:41             ` [PATCH v7 1/3] event/dlb2: add support for independent enqueue Abdullah Sevincer
2024-08-12 18:41             ` [PATCH v7 2/3] eventdev: " Abdullah Sevincer
2024-08-12 18:41             ` [PATCH v7 3/3] event/dsw: add capability " Abdullah Sevincer
2024-08-12 20:00           ` [PATCH v8 0/3] Independent Enqueue Support Abdullah Sevincer
2024-08-12 20:00             ` [PATCH v8 1/3] event/dlb2: add support for independent enqueue Abdullah Sevincer
2024-08-12 20:00             ` [PATCH v8 2/3] eventdev: " Abdullah Sevincer
2024-08-23 11:02               ` Mattias Rönnblom
2024-08-24 20:41                 ` Pathak, Pravin
2024-08-27 18:33                   ` Sevincer, Abdullah
2024-08-28 16:45                   ` Mattias Rönnblom
2024-08-28 16:59                     ` Sevincer, Abdullah
2024-08-29 12:51                       ` Jerin Jacob
2024-08-31 18:38                         ` Sevincer, Abdullah
2024-08-29 17:36               ` [PATCH v9 0/3] Independent Enqueue Support Abdullah Sevincer
2024-08-29 17:36                 ` [PATCH v9 1/3] event/dlb2: add support for independent enqueue Abdullah Sevincer
2024-08-29 17:36                 ` [PATCH v9 2/3] eventdev: " Abdullah Sevincer
2024-08-29 17:36                 ` [PATCH v9 3/3] event/dsw: add capability " Abdullah Sevincer
2024-08-30 16:23               ` [PATCH v10 0/3] Independent Enqueue Support Abdullah Sevincer
2024-08-30 16:23                 ` [PATCH v10 1/3] event/dlb2: add support for independent enqueue Abdullah Sevincer
2024-09-09  1:47                   ` fengchengwen
2024-09-16 17:51                     ` Sevincer, Abdullah
2024-09-09 15:52                   ` [PATCH v11 0/3] Independent Enqueue Support Abdullah Sevincer
2024-09-09 15:52                     ` [PATCH v11 1/3] eventdev: add support for independent enqueue Abdullah Sevincer
2024-09-19 10:32                       ` Jerin Jacob
2024-09-09 15:52                     ` [PATCH v11 2/3] event/dlb2: " Abdullah Sevincer
2024-09-09 15:52                     ` [PATCH v11 3/3] event/dsw: add capability " Abdullah Sevincer
2024-09-09 16:05                   ` [PATCH v12 0/3] Independent Enqueue Support Abdullah Sevincer
2024-09-09 16:05                     ` [PATCH v12 1/3] eventdev: add support for independent enqueue Abdullah Sevincer
2024-09-09 16:05                     ` [PATCH v12 2/3] event/dlb2: " Abdullah Sevincer
2024-09-19 10:49                       ` [EXTERNAL] " Jerin Jacob
2024-10-03 20:36                       ` [PATCH v13 0/3] Independent Enqueue Support Abdullah Sevincer
2024-10-03 20:36                         ` [PATCH v13 1/3] eventdev: add support for independent enqueue Abdullah Sevincer
2024-10-03 20:36                         ` [PATCH v13 2/3] event/dlb2: " Abdullah Sevincer
2024-10-05  7:02                           ` Jerin Jacob
2024-10-03 20:36                         ` [PATCH v13 3/3] event/dsw: add capability " Abdullah Sevincer
2024-10-03 20:49                       ` [PATCH v14 0/3] Independent Enqueue Support Abdullah Sevincer
2024-10-03 20:50                         ` [PATCH v14 1/3] eventdev: add support for independent enqueue Abdullah Sevincer
2024-10-05  6:51                           ` Jerin Jacob
2024-10-05 17:51                           ` [PATCH v15 0/3] Independent Enqueue Support Abdullah Sevincer
2024-10-05 17:51                             ` [PATCH v15 1/3] eventdev: add support for independent enqueue Abdullah Sevincer
2024-10-05 17:51                             ` [PATCH v15 2/3] event/dlb2: " Abdullah Sevincer
2024-10-05 17:51                             ` [PATCH v15 3/3] event/dsw: add capability " Abdullah Sevincer
2024-10-05 18:20                           ` [PATCH v16 0/3] Independent Enqueue Support Abdullah Sevincer
2024-10-05 18:20                             ` [PATCH v16 1/3] eventdev: add support for independent enqueue Abdullah Sevincer
2024-10-05 18:20                             ` [PATCH v16 2/3] event/dlb2: " Abdullah Sevincer
2024-10-05 18:20                             ` [PATCH v16 3/3] event/dsw: add capability " Abdullah Sevincer
2024-10-07  2:00                           ` [PATCH v17 0/3] Independent Enqueue Support Abdullah Sevincer
2024-10-07  2:00                             ` [PATCH v17 1/3] eventdev: add support for independent enqueue Abdullah Sevincer
2024-10-07  7:19                               ` Jerin Jacob [this message]
2024-10-07  7:58                                 ` Sevincer, Abdullah
2024-10-07  2:00                             ` [PATCH v17 2/3] event/dlb2: " Abdullah Sevincer
2024-10-07  2:00                             ` [PATCH v17 3/3] event/dsw: add capability " Abdullah Sevincer
2024-10-07  8:13                           ` [PATCH v18 0/3] Independent Enqueue Support Abdullah Sevincer
2024-10-07  8:13                             ` [PATCH v18 1/3] eventdev: add support for independent enqueue Abdullah Sevincer
2024-10-07 12:19                               ` Jerin Jacob
2024-10-07  8:13                             ` [PATCH v18 2/3] event/dlb2: " Abdullah Sevincer
2024-10-07  8:13                             ` [PATCH v18 3/3] event/dsw: add capability " Abdullah Sevincer
2024-10-03 20:50                         ` [PATCH v14 2/3] event/dlb2: add support " Abdullah Sevincer
2024-10-03 20:50                         ` [PATCH v14 3/3] event/dsw: add capability " Abdullah Sevincer
2024-09-09 16:05                     ` [PATCH v12 " Abdullah Sevincer
2024-09-19 10:49                       ` Jerin Jacob
2024-08-30 16:23                 ` [PATCH v10 2/3] eventdev: add support " Abdullah Sevincer
2024-08-30 16:23                 ` [PATCH v10 3/3] event/dsw: add capability " Abdullah Sevincer
2024-08-12 20:00             ` [PATCH v8 " Abdullah Sevincer
2024-08-23 11:03               ` Mattias Rönnblom
2024-07-11 19:54         ` [PATCH v6 " Abdullah Sevincer
2024-07-23  6:41           ` Mattias Rönnblom
2024-06-21 20:12 ` [PATCH v1 2/2] eventdev: add support for enqueue reorder Abdullah Sevincer

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CALBAE1OHFQj8cStxeNfgG0MRF+JP0bPBbSsBrRB62RdM8W7eHw@mail.gmail.com \
    --to=jerinjacobk@gmail.com \
    --cc=abdullah.sevincer@intel.com \
    --cc=bruce.richardson@intel.com \
    --cc=dev@dpdk.org \
    --cc=jerinj@marvell.com \
    --cc=manish.aggarwal@intel.com \
    --cc=mattias.ronnblom@ericsson.com \
    --cc=pravin.pathak@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).