Hi Akhil, Minor nit inline.
With that addressed, Series Acked-by: Anoob Joseph <[email protected]> Thanks, Anoob > -----Original Message----- > From: Akhil Goyal <[email protected]> > Sent: Monday, May 2, 2022 12:55 AM > To: [email protected] > Cc: Anoob Joseph <[email protected]>; Jerin Jacob Kollanukkaran > <[email protected]>; [email protected]; > [email protected]; [email protected]; Volodymyr > Fialko <[email protected]>; Akhil Goyal <[email protected]>; Fan Zhang > <[email protected]> > Subject: [PATCH v4 1/7] cryptodev: add APIs to get/set event metadata > > From: Volodymyr Fialko <[email protected]> > > Currently, crypto session userdata is used to set event crypto metadata from > the application and the driver is dereferencing it in driver which is not > correct. > User data is meant to be opaque to the driver. > To support this, new API is added to get and set event crypto metadata. The > new API, rte_cryptodev_set_session_event_mdata, > allows setting event metadata in session private data which is filled inside > PMD using a new cryptodev op. This operation can be performed on any of > the PMD supported sessions (sym/asym/security). > For SW abstraction of event crypto adapter to be used by eventdev library, a > new field is added in asymmetric crypto session for now and for symmetric > case, current implementation of using userdata is used. Symmetric cases > cannot be fixed now, as it will be ABI breakage which will be resolved in DPDK > 22.11. > > Signed-off-by: Volodymyr Fialko <[email protected]> > Signed-off-by: Akhil Goyal <[email protected]> > Acked-by: Fan Zhang <[email protected]> > --- > lib/cryptodev/cryptodev_pmd.c | 16 +++++++++++++ > lib/cryptodev/cryptodev_pmd.h | 36 ++++++++++++++++++++++++++++ > lib/cryptodev/rte_cryptodev.c | 44 > +++++++++++++++++++++++++++++++++++ > lib/cryptodev/rte_cryptodev.h | 22 ++++++++++++++++++ > lib/cryptodev/version.map | 4 ++++ > 5 files changed, 122 insertions(+) > [snip] > diff --git a/lib/cryptodev/rte_cryptodev.c b/lib/cryptodev/rte_cryptodev.c > index 3500a2d470..5ebc423afa 100644 > --- a/lib/cryptodev/rte_cryptodev.c > +++ b/lib/cryptodev/rte_cryptodev.c > @@ -2051,6 +2051,9 @@ rte_cryptodev_asym_session_free(uint8_t dev_id, > void *sess) > > dev->dev_ops->asym_session_clear(dev, sess); > > + if (((struct rte_cryptodev_asym_session *)sess)->event_mdata != > NULL) > + rte_free(((struct rte_cryptodev_asym_session *)sess)- > >event_mdata); > + [Anoob] rte_free would do a NULL check. So the other NULL check may not be required.

