[dpdk-dev] [EXT] [PATCH v3 03/15] crypto/mlx5: support session operations

Thomas Monjalon thomas at monjalon.net
Wed May 12 09:01:08 CEST 2021


12/05/2021 07:51, Matan Azrad:
> From: Akhil Goyal
> > > > > > > +static void
> > > > > > > +mlx5_crypto_sym_session_clear(struct rte_cryptodev *dev,
> > > > > > > +                           struct rte_cryptodev_sym_session *sess) {
> > > > > > > +     struct mlx5_crypto_priv *priv = dev->data->dev_private;
> > > > > > > +     struct mlx5_crypto_session *sess_private_data =
> > > > > > > +                     get_sym_session_private_data(sess,
> > > > > > > +dev->driver_id);
> > > > > > > +
> > > > > > > +     if (unlikely(sess_private_data == NULL)) {
> > > > > > > +             DRV_LOG(ERR, "Failed to get session %p private data.",
> > > > > > > +                             sess_private_data);
> > > > > > > +             return;
> > > > > > > +     }
> > > > > > > +     mlx5_crypto_dek_destroy(priv, sess_private_data->dek);
> > > > > > > +     DRV_LOG(DEBUG, "Session %p was cleared.",
> > > > > > > + sess_private_data);
> > > }
> > > > > >
> > > > > > Memory leakage, mempool is not freed.
> > > > >
> > > > > Yes, good catch, this part was missed.
> > > > >
> > > > > > IMO, this driver is not properly tested with the unit test app.
> > > > >
> > > > > The only app we tested until now is l2fwd_crypto and it works fine!
> > > > > We can add it to doc.
> > > > >
> > > > > > Please add a note in the documentation that it is tested with autotest.
> > > > >
> > > > >
> > > > > The next app we want to test with, is test-crypto-perf.
> > > > >
> > > > I would recommend to run the test app first.
> > > > It will catch most of your basic bugs like the one above.
> > >
> > > It is too late for this, will add the test adjustment later.
> > 
> > Can we postpone the PMD to next release.
> 
> We can, but this is not our plan.
> We met all the DPDK rules to push it on time.

There is no guarantee a patch will be pushed. This is not due.

> > I believe test application makes
> > The PMD look robust as per the DPDK crypto PMD API usage.
> 
> Every test will add robustness to the PMD.
> 
> > I haven't seen a PMD getting merged without test app.
> 
> compress/mlx5, vdpa/mlx5, regex/mlx5, net/mlx5, vdev_netvsc....

There are functional test app for regex, and testpmd for net driver.
Running these tests are basic requirements.

> > And I apologize I did not mentioned it earlier, but it is kind of obvious thing to
> > run test app before sending it to upstream.
> 
> In fact, no, I added more than one PMD, no one require specific test.

Each driver class may have its own expectations.

> > L2fwd-crypto is not doing data validation hence you cannot be sure that it is
> > working fine as per other standard stacks like Linux.
> 
> It is not do data validation, but we check that the packet payload return back has the expected encrypted\decrypted data using open-ssl.
> Also for us it was mandatory requirement to check it.
> 
> For us, the current validation is enough, we don't support a lot of things in the crypto PMD currently, only one algorithm in the most basic modes.
> 
> For sure we will continue to add tests and to increase robustness.
> Also adding more features is in plan for future. 
> 
> If you postpone it, it yours, we don't agree with it.

Not clear who is "we".
I am OK with postponing this PMD.

Thank you Akhil for your time.




More information about the dev mailing list