[PATCH v2 2/5] crypto/ipsec_mb: fix sessionless cleanup
De Lara Guarch, Pablo
pablo.de.lara.guarch at intel.com
Thu Sep 15 13:38:32 CEST 2022
Hi Ciara,
> -----Original Message-----
> From: Power, Ciara <ciara.power at intel.com>
> Sent: Thursday, August 25, 2022 3:29 PM
> To: Zhang, Roy Fan <roy.fan.zhang at intel.com>; De Lara Guarch, Pablo
> <pablo.de.lara.guarch at intel.com>
> Cc: dev at dpdk.org; Ji, Kai <kai.ji at intel.com>; Power, Ciara
> <ciara.power at intel.com>; Mrozowicz, SlawomirX
> <slawomirx.mrozowicz at intel.com>
> Subject: [PATCH v2 2/5] crypto/ipsec_mb: fix sessionless cleanup
>
> Currently, for a sessionless op, the session created is reset before being put
> back into the mempool. This causes issues as the object isn't correctly
> released into the mempool.
>
> Fixes: c68d7aa354f6 ("crypto/aesni_mb: use architecture independent
> macros")
> Fixes: b3bbd9e5f265 ("cryptodev: support device independent sessions")
> Fixes: f16662885472 ("crypto/ipsec_mb: add chacha_poly PMD")
> Cc: roy.fan.zhang at intel.com
> Cc: slawomirx.mrozowicz at intel.com
> Cc: kai.ji at intel.com
>
> Signed-off-by: Ciara Power <ciara.power at intel.com>
> ---
> drivers/crypto/ipsec_mb/pmd_aesni_mb.c | 4 ----
> drivers/crypto/ipsec_mb/pmd_chacha_poly.c | 4 ----
> drivers/crypto/ipsec_mb/pmd_kasumi.c | 5 -----
> drivers/crypto/ipsec_mb/pmd_snow3g.c | 4 ----
> drivers/crypto/ipsec_mb/pmd_zuc.c | 4 ----
> 5 files changed, 21 deletions(-)
>
> diff --git a/drivers/crypto/ipsec_mb/pmd_aesni_mb.c
> b/drivers/crypto/ipsec_mb/pmd_aesni_mb.c
> index 6d5d3ce8eb..944fce0261 100644
> --- a/drivers/crypto/ipsec_mb/pmd_aesni_mb.c
> +++ b/drivers/crypto/ipsec_mb/pmd_aesni_mb.c
> @@ -1770,10 +1770,6 @@ post_process_mb_job(struct ipsec_mb_qp *qp,
> IMB_JOB *job)
>
> /* Free session if a session-less crypto op */
> if (op->sess_type == RTE_CRYPTO_OP_SESSIONLESS) {
> - memset(sess, 0, sizeof(struct aesni_mb_session));
> - memset(op->sym->session, 0,
> -
This will leave some info leftover, so it may cause a problem if this object is reused? Is this memset clearing mempool object header and that's the reason why it cannot be released properly?
Maybe Fan/Kai/Slawomir will know more on this.
More information about the dev
mailing list