* [PATCH v1] eventdev/crypto: refactor circular buffer size
@ 2023-04-18 9:16 Ganapati Kundapura
2023-05-17 4:53 ` Gujjar, Abhinandan S
0 siblings, 1 reply; 3+ messages in thread
From: Ganapati Kundapura @ 2023-04-18 9:16 UTC (permalink / raw)
To: jerinj, abhinandan.gujjar, dev; +Cc: s.v.naga.harish.k, jay.jayatheerthan
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.kundapura@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
^ permalink raw reply [flat|nested] 3+ messages in thread
* RE: [PATCH v1] eventdev/crypto: refactor circular buffer size
2023-04-18 9:16 [PATCH v1] eventdev/crypto: refactor circular buffer size Ganapati Kundapura
@ 2023-05-17 4:53 ` Gujjar, Abhinandan S
2023-05-17 14:49 ` Jerin Jacob
0 siblings, 1 reply; 3+ messages in thread
From: Gujjar, Abhinandan S @ 2023-05-17 4:53 UTC (permalink / raw)
To: Kundapura, Ganapati, jerinj, dev; +Cc: Naga Harish K, S V, Jayatheerthan, Jay
> -----Original Message-----
> From: Kundapura, Ganapati <ganapati.kundapura@intel.com>
> Sent: Tuesday, April 18, 2023 2:46 PM
> To: jerinj@marvell.com; Gujjar, Abhinandan S
> <abhinandan.gujjar@intel.com>; dev@dpdk.org
> Cc: Naga Harish K, S V <s.v.naga.harish.k@intel.com>; Jayatheerthan, Jay
> <jay.jayatheerthan@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.kundapura@intel.com>
Acked-by: Abhinandan Gujjar <abhinandan.gujjar@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
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH v1] eventdev/crypto: refactor circular buffer size
2023-05-17 4:53 ` Gujjar, Abhinandan S
@ 2023-05-17 14:49 ` Jerin Jacob
0 siblings, 0 replies; 3+ messages in thread
From: Jerin Jacob @ 2023-05-17 14:49 UTC (permalink / raw)
To: Gujjar, Abhinandan S
Cc: Kundapura, Ganapati, jerinj, dev, Naga Harish K, S V, Jayatheerthan, Jay
On Wed, May 17, 2023 at 10:23 AM Gujjar, Abhinandan S
<abhinandan.gujjar@intel.com> wrote:
>
>
> > -----Original Message-----
> > From: Kundapura, Ganapati <ganapati.kundapura@intel.com>
> > Sent: Tuesday, April 18, 2023 2:46 PM
> > To: jerinj@marvell.com; Gujjar, Abhinandan S
> > <abhinandan.gujjar@intel.com>; dev@dpdk.org
> > Cc: Naga Harish K, S V <s.v.naga.harish.k@intel.com>; Jayatheerthan, Jay
> > <jay.jayatheerthan@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.kundapura@intel.com>
>
> Acked-by: Abhinandan Gujjar <abhinandan.gujjar@intel.com>
Applied to dpdk-next-net-eventdev/for-main. Thanks
>
> >
> > 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
>
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2023-05-17 14:49 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-04-18 9:16 [PATCH v1] eventdev/crypto: refactor circular buffer size Ganapati Kundapura
2023-05-17 4:53 ` Gujjar, Abhinandan S
2023-05-17 14:49 ` Jerin Jacob
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).