> -----Original Message----- > From: Kundapura, Ganapati <ganapati.kundap...@intel.com> > Sent: Tuesday, April 18, 2023 2:46 PM > To: jer...@marvell.com; Gujjar, Abhinandan S > <abhinandan.guj...@intel.com>; dev@dpdk.org > Cc: Naga Harish K, S V <s.v.naga.haris...@intel.com>; Jayatheerthan, Jay > <jay.jayatheert...@intel.com> > Subject: [PATCH v1] eventdev/crypto: refactor circular buffer size > > In case of CRYPTO_ADAPTER_OPS_BUFFER_SZ is modified, > eca_circular_buffer_space_for_batch() also needs to be updated to check > maximum number of crypto ops can be accommodated in circular buffer > when CPM becomes busy. > > Defined MAX_OPS_IN_BUFFER which contains size for batch of dequeued > events and redefined CRYPTO_ADAPTER_OPS_BUFFER_SZ in terms of > MAX_OPS_IN_BUFFER. > > This patch makes eca_circular_buffer_space_for_batch() independent of > circular buffer changes. > > Signed-off-by: Ganapati Kundapura <ganapati.kundap...@intel.com>
Acked-by: Abhinandan Gujjar <abhinandan.guj...@intel.com> > > diff --git a/lib/eventdev/rte_event_crypto_adapter.c > b/lib/eventdev/rte_event_crypto_adapter.c > index f6c1e53..52a28e5 100644 > --- a/lib/eventdev/rte_event_crypto_adapter.c > +++ b/lib/eventdev/rte_event_crypto_adapter.c > @@ -25,7 +25,14 @@ > #define CRYPTO_ADAPTER_MEM_NAME_LEN 32 > #define CRYPTO_ADAPTER_MAX_EV_ENQ_RETRIES 100 > > -#define CRYPTO_ADAPTER_OPS_BUFFER_SZ (BATCH_SIZE + BATCH_SIZE) > +/* MAX_OPS_IN_BUFFER contains size for batch of dequeued events */ > +#define MAX_OPS_IN_BUFFER BATCH_SIZE > + > +/* CRYPTO_ADAPTER_OPS_BUFFER_SZ to accommodate > MAX_OPS_IN_BUFFER + > + * additional space for one batch > + */ > +#define CRYPTO_ADAPTER_OPS_BUFFER_SZ (MAX_OPS_IN_BUFFER + > BATCH_SIZE) > + > #define CRYPTO_ADAPTER_BUFFER_SZ 1024 > > /* Flush an instance's enqueue buffers every > CRYPTO_ENQ_FLUSH_THRESHOLD @@ -188,7 +195,8 @@ > eca_circular_buffer_batch_ready(struct crypto_ops_circular_buffer *bufp) > static inline bool eca_circular_buffer_space_for_batch(struct > crypto_ops_circular_buffer *bufp) { > - return (bufp->size - bufp->count) >= BATCH_SIZE; > + /* circular buffer can have atmost MAX_OPS_IN_BUFFER */ > + return (bufp->size - bufp->count) >= MAX_OPS_IN_BUFFER; > } > > static inline void > -- > 2.6.4