diff mbox series

[v2] eventdev: fix case to initiate crypto adapter service

Message ID 8d73cf4b565f5f66badaca26ec3a9f26cedf2304.1618217424.git.sthotton@marvell.com (mailing list archive)
State Accepted, archived
Delegated to: Jerin Jacob
Headers show
Series [v2] eventdev: fix case to initiate crypto adapter service | expand

Checks

Context Check Description
ci/iol-testing success Testing PASS
ci/intel-Testing success Testing PASS
ci/Intel-compilation success Compilation OK
ci/iol-abi-testing success Testing PASS
ci/github-robot success github build: passed
ci/travis-robot success travis build: passed
ci/checkpatch success coding style OK

Commit Message

Shijith Thotton April 12, 2021, 8:53 a.m. UTC
Initiate software crypto adapter service, only if hardware capabilities
are not reported. In OP_FORWARD mode, software service is not required
to enqueue events if OP_FORWARD capability is supported by the PMD.

Fixes: 7901eac3409a ("eventdev: add crypto adapter implementation")

Signed-off-by: Shijith Thotton <sthotton@marvell.com>
---
v2:
- Reworded commit message.

 lib/librte_eventdev/rte_event_crypto_adapter.c | 1 +
 1 file changed, 1 insertion(+)

Comments

Gujjar, Abhinandan S April 13, 2021, 4:08 a.m. UTC | #1
> -----Original Message-----
> From: Shijith Thotton <sthotton@marvell.com>
> Sent: Monday, April 12, 2021 2:24 PM
> To: dev@dpdk.org
> Cc: Shijith Thotton <sthotton@marvell.com>; Gujjar, Abhinandan S
> <abhinandan.gujjar@intel.com>; Jerin Jacob <jerinj@marvell.com>; Akhil
> Goyal <gakhil@marvell.com>; Anoob Joseph <anoobj@marvell.com>
> Subject: [PATCH v2] eventdev: fix case to initiate crypto adapter service
> 
> Initiate software crypto adapter service, only if hardware capabilities are not
> reported. In OP_FORWARD mode, software service is not required to
> enqueue events if OP_FORWARD capability is supported by the PMD.
> 
> Fixes: 7901eac3409a ("eventdev: add crypto adapter implementation")
> 
> Signed-off-by: Shijith Thotton <sthotton@marvell.com>
> ---
> v2:
> - Reworded commit message.
> 
>  lib/librte_eventdev/rte_event_crypto_adapter.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/lib/librte_eventdev/rte_event_crypto_adapter.c
> b/lib/librte_eventdev/rte_event_crypto_adapter.c
> index d903cdd48..e1d38d383 100644
> --- a/lib/librte_eventdev/rte_event_crypto_adapter.c
> +++ b/lib/librte_eventdev/rte_event_crypto_adapter.c
> @@ -861,6 +861,7 @@ rte_event_crypto_adapter_queue_pair_add(uint8_t
> id,
>  	 *          b. OP_NEW mode -> SW Dequeue
>  	 */
>  	if ((cap &
> RTE_EVENT_CRYPTO_ADAPTER_CAP_INTERNAL_PORT_OP_NEW &&
> +	     !(cap &
> RTE_EVENT_CRYPTO_ADAPTER_CAP_INTERNAL_PORT_OP_FWD) &&
The same check is below ORed with above condition.
This is confusing. Could you recheck & do the necessary changes?
 
>  	     adapter->mode ==
> RTE_EVENT_CRYPTO_ADAPTER_OP_FORWARD) ||
>  	     (!(cap &
> RTE_EVENT_CRYPTO_ADAPTER_CAP_INTERNAL_PORT_OP_NEW) &&
>  	      !(cap &
> RTE_EVENT_CRYPTO_ADAPTER_CAP_INTERNAL_PORT_OP_FWD) &&
> --
> 2.25.1
Shijith Thotton April 13, 2021, 7:51 a.m. UTC | #2
On Tue, Apr 13, 2021 at 04:08:40AM +0000, Gujjar, Abhinandan S wrote:
> 
> 
> > -----Original Message-----
> > From: Shijith Thotton <sthotton@marvell.com>
> > Sent: Monday, April 12, 2021 2:24 PM
> > To: dev@dpdk.org
> > Cc: Shijith Thotton <sthotton@marvell.com>; Gujjar, Abhinandan S
> > <abhinandan.gujjar@intel.com>; Jerin Jacob <jerinj@marvell.com>; Akhil
> > Goyal <gakhil@marvell.com>; Anoob Joseph <anoobj@marvell.com>
> > Subject: [PATCH v2] eventdev: fix case to initiate crypto adapter service
> > 
> > Initiate software crypto adapter service, only if hardware capabilities are not
> > reported. In OP_FORWARD mode, software service is not required to
> > enqueue events if OP_FORWARD capability is supported by the PMD.
> > 
> > Fixes: 7901eac3409a ("eventdev: add crypto adapter implementation")
> > 
> > Signed-off-by: Shijith Thotton <sthotton@marvell.com>
> > ---
> > v2:
> > - Reworded commit message.
> > 
> >  lib/librte_eventdev/rte_event_crypto_adapter.c | 1 +
> >  1 file changed, 1 insertion(+)
> > 
> > diff --git a/lib/librte_eventdev/rte_event_crypto_adapter.c
> > b/lib/librte_eventdev/rte_event_crypto_adapter.c
> > index d903cdd48..e1d38d383 100644
> > --- a/lib/librte_eventdev/rte_event_crypto_adapter.c
> > +++ b/lib/librte_eventdev/rte_event_crypto_adapter.c
> > @@ -861,6 +861,7 @@ rte_event_crypto_adapter_queue_pair_add(uint8_t
> > id,
> >  	 *          b. OP_NEW mode -> SW Dequeue
> >  	 */
> >  	if ((cap &
> > RTE_EVENT_CRYPTO_ADAPTER_CAP_INTERNAL_PORT_OP_NEW &&
> > +	     !(cap &
> > RTE_EVENT_CRYPTO_ADAPTER_CAP_INTERNAL_PORT_OP_FWD) &&
> The same check is below ORed with above condition.
> This is confusing. Could you recheck & do the necessary changes?
> 

As per comments above, below checks are used to initiate SW service if:
1. PMDs supports OP_NEW, but not OP_FWD, in FWD mode.
2. Does not support OP_NEW and OP_FWD.

I have fixed the first point where only support for OP_NEW is checked in forward
mode, by adding a check for no OP_FWD capability.

> >  	     adapter->mode ==
> > RTE_EVENT_CRYPTO_ADAPTER_OP_FORWARD) ||
> >  	     (!(cap &
> > RTE_EVENT_CRYPTO_ADAPTER_CAP_INTERNAL_PORT_OP_NEW) &&
> >  	      !(cap &
> > RTE_EVENT_CRYPTO_ADAPTER_CAP_INTERNAL_PORT_OP_FWD) &&
> > --
> > 2.25.1
>
Gujjar, Abhinandan S April 14, 2021, 7:06 a.m. UTC | #3
> -----Original Message-----
> From: Shijith Thotton <shijith.thotton@gmail.com>
> Sent: Tuesday, April 13, 2021 1:21 PM
> To: Gujjar, Abhinandan S <abhinandan.gujjar@intel.com>
> Cc: Shijith Thotton <sthotton@marvell.com>; dev@dpdk.org; Jerin Jacob
> <jerinj@marvell.com>; Akhil Goyal <gakhil@marvell.com>; Anoob Joseph
> <anoobj@marvell.com>
> Subject: Re: [dpdk-dev] [PATCH v2] eventdev: fix case to initiate crypto
> adapter service
> 
> On Tue, Apr 13, 2021 at 04:08:40AM +0000, Gujjar, Abhinandan S wrote:
> >
> >
> > > -----Original Message-----
> > > From: Shijith Thotton <sthotton@marvell.com>
> > > Sent: Monday, April 12, 2021 2:24 PM
> > > To: dev@dpdk.org
> > > Cc: Shijith Thotton <sthotton@marvell.com>; Gujjar, Abhinandan S
> > > <abhinandan.gujjar@intel.com>; Jerin Jacob <jerinj@marvell.com>;
> > > Akhil Goyal <gakhil@marvell.com>; Anoob Joseph
> <anoobj@marvell.com>
> > > Subject: [PATCH v2] eventdev: fix case to initiate crypto adapter
> > > service
> > >
> > > Initiate software crypto adapter service, only if hardware
> > > capabilities are not reported. In OP_FORWARD mode, software service
> > > is not required to enqueue events if OP_FORWARD capability is
> supported by the PMD.
> > >
> > > Fixes: 7901eac3409a ("eventdev: add crypto adapter implementation")
> > >
> > > Signed-off-by: Shijith Thotton <sthotton@marvell.com>
> > > ---
> > > v2:
> > > - Reworded commit message.
> > >
> > >  lib/librte_eventdev/rte_event_crypto_adapter.c | 1 +
> > >  1 file changed, 1 insertion(+)
> > >
> > > diff --git a/lib/librte_eventdev/rte_event_crypto_adapter.c
> > > b/lib/librte_eventdev/rte_event_crypto_adapter.c
> > > index d903cdd48..e1d38d383 100644
> > > --- a/lib/librte_eventdev/rte_event_crypto_adapter.c
> > > +++ b/lib/librte_eventdev/rte_event_crypto_adapter.c
> > > @@ -861,6 +861,7 @@
> rte_event_crypto_adapter_queue_pair_add(uint8_t
> > > id,
> > >  	 *          b. OP_NEW mode -> SW Dequeue
> > >  	 */
> > >  	if ((cap &
> > > RTE_EVENT_CRYPTO_ADAPTER_CAP_INTERNAL_PORT_OP_NEW &&
> > > +	     !(cap &
> > > RTE_EVENT_CRYPTO_ADAPTER_CAP_INTERNAL_PORT_OP_FWD) &&
> > The same check is below ORed with above condition.
> > This is confusing. Could you recheck & do the necessary changes?
> >
> 
> As per comments above, below checks are used to initiate SW service if:
> 1. PMDs supports OP_NEW, but not OP_FWD, in FWD mode.
> 2. Does not support OP_NEW and OP_FWD.
> 
> I have fixed the first point where only support for OP_NEW is checked in
> forward mode, by adding a check for no OP_FWD capability.
Sounds good.

Acked-by: Abhinandan.gujjar@intel.com

> 
> > >  	     adapter->mode ==
> > > RTE_EVENT_CRYPTO_ADAPTER_OP_FORWARD) ||
> > >  	     (!(cap &
> > > RTE_EVENT_CRYPTO_ADAPTER_CAP_INTERNAL_PORT_OP_NEW) &&
> > >  	      !(cap &
> > > RTE_EVENT_CRYPTO_ADAPTER_CAP_INTERNAL_PORT_OP_FWD) &&
> > > --
> > > 2.25.1
> >
Jerin Jacob April 17, 2021, 5:24 p.m. UTC | #4
On Wed, Apr 14, 2021 at 12:36 PM Gujjar, Abhinandan S
<abhinandan.gujjar@intel.com> wrote:
>
>
>
> > -----Original Message-----
> > From: Shijith Thotton <shijith.thotton@gmail.com>
> > Sent: Tuesday, April 13, 2021 1:21 PM
> > To: Gujjar, Abhinandan S <abhinandan.gujjar@intel.com>
> > Cc: Shijith Thotton <sthotton@marvell.com>; dev@dpdk.org; Jerin Jacob
> > <jerinj@marvell.com>; Akhil Goyal <gakhil@marvell.com>; Anoob Joseph
> > <anoobj@marvell.com>
> > Subject: Re: [dpdk-dev] [PATCH v2] eventdev: fix case to initiate crypto
> > adapter service

> >
> > As per comments above, below checks are used to initiate SW service if:
> > 1. PMDs supports OP_NEW, but not OP_FWD, in FWD mode.
> > 2. Does not support OP_NEW and OP_FWD.
> >
> > I have fixed the first point where only support for OP_NEW is checked in
> > forward mode, by adding a check for no OP_FWD capability.
> Sounds good.
>
> Acked-by: Abhinandan.gujjar@intel.com

Applied to dpdk-next-eventdev/for-main. Thanks.



>
> >
> > > >        adapter->mode ==
> > > > RTE_EVENT_CRYPTO_ADAPTER_OP_FORWARD) ||
> > > >        (!(cap &
> > > > RTE_EVENT_CRYPTO_ADAPTER_CAP_INTERNAL_PORT_OP_NEW) &&
> > > >         !(cap &
> > > > RTE_EVENT_CRYPTO_ADAPTER_CAP_INTERNAL_PORT_OP_FWD) &&
> > > > --
> > > > 2.25.1
> > >
diff mbox series

Patch

diff --git a/lib/librte_eventdev/rte_event_crypto_adapter.c b/lib/librte_eventdev/rte_event_crypto_adapter.c
index d903cdd48..e1d38d383 100644
--- a/lib/librte_eventdev/rte_event_crypto_adapter.c
+++ b/lib/librte_eventdev/rte_event_crypto_adapter.c
@@ -861,6 +861,7 @@  rte_event_crypto_adapter_queue_pair_add(uint8_t id,
 	 *          b. OP_NEW mode -> SW Dequeue
 	 */
 	if ((cap & RTE_EVENT_CRYPTO_ADAPTER_CAP_INTERNAL_PORT_OP_NEW &&
+	     !(cap & RTE_EVENT_CRYPTO_ADAPTER_CAP_INTERNAL_PORT_OP_FWD) &&
 	     adapter->mode == RTE_EVENT_CRYPTO_ADAPTER_OP_FORWARD) ||
 	     (!(cap & RTE_EVENT_CRYPTO_ADAPTER_CAP_INTERNAL_PORT_OP_NEW) &&
 	      !(cap & RTE_EVENT_CRYPTO_ADAPTER_CAP_INTERNAL_PORT_OP_FWD) &&