> -----Original Message-----
> From: Pavan Nikhilesh Bhagavatula <pbhagavat...@marvell.com>
> Sent: Wednesday, September 22, 2021 2:02 AM
> To: Naga Harish K, S V <s.v.naga.haris...@intel.com>; Jerin Jacob
> Kollanukkaran <jer...@marvell.com>; Jayatheerthan, Jay
> <jay.jayatheert...@intel.com>
> Cc: dev@dpdk.org
> Subject: RE: [EXT] [dpdk-dev] [PATCH v2 3/5] eventdev/rx_adapter:add per
> queue event buffer configure support
>
>
>
> >-----Original Message-----
> >From: dev <dev-boun...@dpdk.org> On Behalf Of Naga Harish K S V
> >Sent: Tuesday, September 21, 2021 2:52 PM
> >To: Jerin Jacob Kollanukkaran <jer...@marvell.com>;
> >jay.jayatheert...@intel.com
> >Cc: dev@dpdk.org
> >Subject: [EXT] [dpdk-dev] [PATCH v2 3/5] eventdev/rx_adapter:add per
> >queue event buffer configure support
> >
> >External Email
> >
> >----------------------------------------------------------------------
> >To configure per queue event buffer size, applications sets
> >``rte_event_eth_rx_adapter_params::use_queue_event_buf`` flag as true
> >and is passed to ``rte_event_eth_rx_adapter_create_with_params``
> >api.
> >
> >The per queue event buffer size is populated in
> >``rte_event_eth_rx_adapter_queue_conf::event_buf_size`` and passed to
> >``rte_event_eth_rx_adapter_queue_add`` api.
> >
> >Signed-off-by: Naga Harish K S V <s.v.naga.haris...@intel.com>
> >---
> > .../prog_guide/event_ethernet_rx_adapter.rst | 19 ++++++++++++---
> >----
> > lib/eventdev/rte_event_eth_rx_adapter.h | 4 ++++
> > 2 files changed, 16 insertions(+), 7 deletions(-)
> >
> >diff --git a/doc/guides/prog_guide/event_ethernet_rx_adapter.rst
> >b/doc/guides/prog_guide/event_ethernet_rx_adapter.rst
> >index dd753613bd..333e6f8192 100644
> >--- a/doc/guides/prog_guide/event_ethernet_rx_adapter.rst
> >+++ b/doc/guides/prog_guide/event_ethernet_rx_adapter.rst
> >@@ -62,12 +62,14 @@ service function and needs to create an event port
> >for it. The callback is expected to fill the ``struct
> >rte_event_eth_rx_adapter_conf structure`` passed to it.
> >
> >-If the application desires to control the event buffer size, it can
> >use the -``rte_event_eth_rx_adapter_create_with_params()`` api. The
> >event buffer size is -specified using ``struct
> >rte_event_eth_rx_adapter_params::event_buf_size``.
> >-The function is passed the event device to be associated with the
> >adapter -and port configuration for the adapter to setup an event port
> >if the -adapter needs to use a service function.
> >+If the application desires to control the event buffer size at adapter
> >level,
> >+it can use the ``rte_event_eth_rx_adapter_create_with_params()``
> >api. The event
> >+buffer size is specified using ``struct
> >rte_event_eth_rx_adapter_params::
> >+event_buf_size``. To configure the event buffer size at queue level,
> >the boolean
> >+flag ``struct
> >rte_event_eth_rx_adapter_params::use_queue_event_buf`` need to be
> >+set to true. The function is passed the event device to be associated
> >with
> >+the adapter and port configuration for the adapter to setup an event
> >port
> >+if the adapter needs to use a service function.
> >
> > Adding Rx Queues to the Adapter Instance
> >~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> >@@ -79,7 +81,9 @@ parameter. Event information for packets from this Rx
> >queue is encoded in the ``ev`` field of ``struct
> >rte_event_eth_rx_adapter_queue_conf``. The servicing_weight member
> of
> >the struct rte_event_eth_rx_adapter_queue_conf
> > is the relative polling frequency of the Rx queue and is applicable
> >when the -adapter uses a service core function.
> >+adapter uses a service core function. The applications can configure
> >queue
> >+event buffer size in ``struct
> >rte_event_eth_rx_adapter_queue_conf::event_buf_size``
> >+parameter.
> >
> > .. code-block:: c
> >
> >@@ -90,6 +94,7 @@ adapter uses a service core function.
> > queue_config.rx_queue_flags = 0;
> > queue_config.ev = ev;
> > queue_config.servicing_weight = 1;
> >+ queue_config.event_buf_size = 1024;
>
> Wasn't this set to 6 * BURST_SIZE in the previous patch?
Application may choose to use any value for the event buffer size.
That is the purpose of this change, to change event buffer size as per
Application requirements.
>
> >
> > err = rte_event_eth_rx_adapter_queue_add(id,
> > eth_dev_id, diff --git
> >a/lib/eventdev/rte_event_eth_rx_adapter.h
> >b/lib/eventdev/rte_event_eth_rx_adapter.h
> >index a7881097b4..b9f0563244 100644
> >--- a/lib/eventdev/rte_event_eth_rx_adapter.h
> >+++ b/lib/eventdev/rte_event_eth_rx_adapter.h
> >@@ -199,6 +199,8 @@ struct rte_event_eth_rx_adapter_queue_conf {
> > * Valid when
> >RTE_EVENT_ETH_RX_ADAPTER_QUEUE_EVENT_VECTOR flag is set in
> > * @see
> >rte_event_eth_rx_adapter_queue_conf::rx_queue_flags.
> > */
> >+ uint16_t event_buf_size;
> >+ /**< event buffer size for this queue */
> > };
> >
> > /**
> >@@ -265,6 +267,8 @@ struct rte_event_eth_rx_adapter_params {
> > /**< size of event buffer for the adapter.
> > * the size is aligned to BATCH_SIZE and added (2 * BATCH_SIZE)
> > */
> >+ bool use_queue_event_buf;
> >+ /**< flag to indicate that event buffer is separate for each
> >queue */
> > };
> >
> > /**
> >--
> >2.25.1