[PATCH 1/9] common/dpaax: fix invalid key command error
Hemant Agrawal
hemant.agrawal at oss.nxp.com
Tue May 20 08:16:17 CEST 2025
On 20-05-2025 11:21, Gagandeep Singh wrote:
> Due to race between KEY loading to CAAM’s internal memory
> and initiating crypto operations can SEC errors in PDCP
> AES algo combinations.
Please fix grammar.
> To mitigate this, adding CALM instruction in SN 12bit case
> and using older version of descriptor for SN 18bit case.
>
> Fixes: 6127fff842a7 ("common/dpaax: remove outdated caamflib code")
> Cc: franck.lenormand at nxp.com
> Cc: stable at dpdk.org
>
> Signed-off-by: Gagandeep Singh <g.singh at nxp.com>
> ---
Please send cover-letter for multi patch series.
> drivers/common/dpaax/caamflib/desc/pdcp.h | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/common/dpaax/caamflib/desc/pdcp.h b/drivers/common/dpaax/caamflib/desc/pdcp.h
> index 9ada3905c5..f4379ede2c 100644
> --- a/drivers/common/dpaax/caamflib/desc/pdcp.h
> +++ b/drivers/common/dpaax/caamflib/desc/pdcp.h
> @@ -1,6 +1,6 @@
> /* SPDX-License-Identifier: BSD-3-Clause or GPL-2.0+
> * Copyright 2008-2013 Freescale Semiconductor, Inc.
> - * Copyright 2019-2023 NXP
> + * Copyright 2019-2025 NXP
> */
>
> #ifndef __DESC_PDCP_H__
> @@ -1981,8 +1981,7 @@ pdcp_insert_uplane_no_int_op(struct program *p,
> KEY(p, KEY1, cipherdata->key_enc_flags, cipherdata->key,
> cipherdata->keylen, INLINE_KEY(cipherdata));
>
> - if ((sn_size == PDCP_SN_SIZE_15) ||
> - (rta_sec_era >= RTA_SEC_ERA_10)) {
> + if (sn_size == PDCP_SN_SIZE_15) {
In description, you mentioned 18 bit SN case, however here you are
modifying 15 bit code?
am I missing the changes for 18 bit ?
> PROTOCOL(p, dir, OP_PCLID_LTE_PDCP_USER,
> (uint16_t)cipherdata->algtype);
> return 0;
> @@ -2747,6 +2746,7 @@ cnstr_shdsc_pdcp_u_plane_encap(uint32_t *descbuf,
> (uint64_t)cipherdata->key, cipherdata->keylen,
> INLINE_KEY(cipherdata));
>
> + JUMP(p, 1, LOCAL_JUMP, ALL_TRUE, CALM);
> if (authdata)
> PROTOCOL(p, OP_TYPE_ENCAP_PROTOCOL,
> OP_PCLID_LTE_PDCP_USER_RN,
More information about the dev
mailing list