> > Hi Akhil, > > I will send v4 as I will change a little bit formatting in documentation. > > > -----Original Message----- > > From: Kusztal, ArkadiuszX > > Sent: Wednesday, October 9, 2019 10:33 AM > > To: dev@dpdk.org > > Cc: akhil.go...@nxp.com; Trahe, Fiona <fiona.tr...@intel.com>; > > shal...@marvell.com; ano...@marvell.com; Kusztal, ArkadiuszX > > <arkadiuszx.kusz...@intel.com> > > Subject: [PATCH v3] cryptodev: extend api of asymmetric crypto by > > sessionless > > > > This commit adds asymmetric session-less option to rte_crypto_asym_op. > > Feature flag for sessionless is added to rte_cryptodev. > > > > Signed-off-by: Arek Kusztal <arkadiuszx.kusz...@intel.com> > > --- > > v2: > > - added union > > v3: > > - added entry into feature matrix > > - added information to prog_guide > > > > doc/guides/cryptodevs/features/default.ini | 1 + > > doc/guides/prog_guide/cryptodev_lib.rst | 8 +++++++- > > lib/librte_cryptodev/rte_crypto_asym.h | 9 +++++++-- > > lib/librte_cryptodev/rte_cryptodev.h | 2 ++ > > 4 files changed, 17 insertions(+), 3 deletions(-) > > > > diff --git a/doc/guides/cryptodevs/features/default.ini > > b/doc/guides/cryptodevs/features/default.ini > > index d3ee1af..b7f9a0a 100644 > > --- a/doc/guides/cryptodevs/features/default.ini > > +++ b/doc/guides/cryptodevs/features/default.ini > > @@ -26,6 +26,7 @@ OOP LB In LB Out = > > RSA PRIV OP KEY EXP = > > RSA PRIV OP KEY QT = > > Digest encrypted = > > +Asymmetric sessionless = > > > > ; > > ; Supported crypto algorithms of a default crypto driver. > > diff --git a/doc/guides/prog_guide/cryptodev_lib.rst > > b/doc/guides/prog_guide/cryptodev_lib.rst > > index 9719944..9ecb322 100644 > > --- a/doc/guides/prog_guide/cryptodev_lib.rst > > +++ b/doc/guides/prog_guide/cryptodev_lib.rst > > @@ -876,7 +876,13 @@ private asymmetric session data. Once this is done, > > session should be freed usin > > > > Asymmetric Sessionless Support > > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > > -Currently asymmetric crypto framework does not support sessionless. > > +Asymmetric crypto framework support sessionless operations.
Please re-phrase this section properly as well. > > + > > +Fields that should be set by user are: > > +- rte_crypto_asym_xform *xform member of struct rte_crypto_asym_op > > +should point to the asymmetric crypto xform. Note that this xform > > +should be immutable for the lifetime of associated crypto_op. > > +- uint8_t sess_type member of rte_crypto_op should be set to > > RTE_CRYPTO_OP_SESSIONLESS. > > > > Transforms and Transform Chaining > > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > > diff --git a/lib/librte_cryptodev/rte_crypto_asym.h > > b/lib/librte_cryptodev/rte_crypto_asym.h > > index 4fbef2f..0d34ce8 100644 > > --- a/lib/librte_cryptodev/rte_crypto_asym.h > > +++ b/lib/librte_cryptodev/rte_crypto_asym.h > > @@ -522,8 +522,13 @@ struct rte_crypto_dsa_op_param { > > * > > */ > > struct rte_crypto_asym_op { > > - struct rte_cryptodev_asym_session *session; > > - /**< Handle for the initialised session context */ > > + RTE_STD_C11 > > + union { > > + struct rte_cryptodev_asym_session *session; > > + /**< Handle for the initialised session context */ > > + struct rte_crypto_asym_xform *xform; > > + /**< Session-less API crypto operation parameters */ > > + }; > > > > __extension__ > > union { > > diff --git a/lib/librte_cryptodev/rte_cryptodev.h > > b/lib/librte_cryptodev/rte_cryptodev.h > > index e175b83..c6ffa3b 100644 > > --- a/lib/librte_cryptodev/rte_cryptodev.h > > +++ b/lib/librte_cryptodev/rte_cryptodev.h > > @@ -448,6 +448,8 @@ rte_cryptodev_asym_get_xform_enum(enum > > rte_crypto_asym_xform_type *xform_enum, /**< Support RSA Private Key > > OP with CRT (quintuple) Keys */ > > #define RTE_CRYPTODEV_FF_DIGEST_ENCRYPTED (1ULL << 19) > > /**< Support encrypted-digest operations where digest is appended to data > > */ > > +#define RTE_CRYPTODEV_FF_ASYM_SESSIONLESS (1ULL << 20) > > +/**< Support asymmetric session-less operations */ > > > > > > /** > > -- > > 2.1.0