DPDK patches and discussions
 help / color / mirror / Atom feed
* [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).