On Tue, Sep 21, 2021 at 2:52 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_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>
Fix check-git-log issues Wrong headline format: eventdev/rx_adapter:add per queue event buffer configure support Wrong headline case: "test/event: add unit test for event buffer size config api": api --> API Wrong headline case: "test/eventdev: add per rx queue event buffer unit": rx --> Rx Headline too long: eventdev/rx_adapter: add support to configure event buffer size eventdev/rx_adapter:add per queue event buffer configure support Invalid patch(es) found - checked 5 patches > --- > .../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; > > 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 >