Hi Jerin, > -----Original Message----- > From: Jerin Jacob <jerinjac...@gmail.com> > Sent: Monday, September 20, 2021 11:53 AM > To: Naga Harish K, S V <s.v.naga.haris...@intel.com>; Pavan Nikhilesh > <pbhagavat...@marvell.com>; mattias.ronnblom > <mattias.ronnb...@ericsson.com> > Cc: Jerin Jacob <jer...@marvell.com>; Jayatheerthan, Jay > <jay.jayatheert...@intel.com>; dpdk-dev <dev@dpdk.org> > Subject: Re: [dpdk-dev] [PATCH v1 3/5] eventdev:rx_adapter:add per queue > event buffer configure support > > On Sat, Sep 18, 2021 at 6:42 PM Naga Harish K S V > <s.v.naga.haris...@intel.com> wrote: > > > > 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_create2` 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``. > > > > Signed-off-by: Naga Harish K S V <s.v.naga.haris...@intel.com> > > Please change the subject to > eventdev/rx_adapter: ... >
It is updated in latest patch set. > rest looks good to me. > > > --- > > .../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 cbf694c66b..55d09dbcb8 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_create2()`` 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_create2()`` > > +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; > > > > 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 a1b5e0ed37..f9e63dc126 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 */ > > }; > > > > /** > > @@ -263,6 +265,8 @@ struct rte_event_eth_rx_adapter_vector_limits { > > struct rte_event_eth_rx_adapter_params { > > uint16_t event_buf_size; > > /**< size of event buffer for the adapter */ > > + bool use_queue_event_buf; > > + /**< flag to indicate that event buffer is separate for each > > + queue */ > > }; > > > > /** > > -- > > 2.25.1 > > Regards Harish