linux-stable/drivers/crypto/caam
Herbert Xu 660ca9470f crypto: caam - Fix edesc/iv ordering mixup
The attempt to add DMA alignment padding by moving IV to the front
of edesc was completely broken as it didn't change the places where
edesc was freed.

It's also wrong as the IV may still share a cache-line with the
edesc.

Fix this by restoring the original layout and simply reserving
enough memmory so that the IV is on a DMA cache-line by itself.

Reported-by: Meenakshi Aggarwal <meenakshi.aggarwal@nxp.com>
Fixes: 199354d7fb ("crypto: caam - Remove GFP_DMA and add DMA alignment padding")
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2023-02-28 16:30:58 +08:00
..
blob_gen.c crypto: caam - Remove GFP_DMA and add DMA alignment padding 2023-01-06 17:15:47 +08:00
caamalg.c crypto: caam - Fix edesc/iv ordering mixup 2023-02-28 16:30:58 +08:00
caamalg_desc.c crypto: caam/jr - add support for XTS with 16B IV 2020-10-02 18:02:12 +10:00
caamalg_desc.h crypto: caam - update rfc4106 sh desc to support zero length input 2019-08-09 15:11:48 +10:00
caamalg_qi.c crypto: caam - Fix edesc/iv ordering mixup 2023-02-28 16:30:58 +08:00
caamalg_qi2.c crypto: caam - Use ahash_request_complete 2023-01-27 18:58:09 +08:00
caamalg_qi2.h crypto: caam - Remove GFP_DMA and add DMA alignment padding 2023-01-06 17:15:47 +08:00
caamhash.c crypto: caam - Use ahash_request_complete 2023-01-27 18:58:09 +08:00
caamhash_desc.c crypto: caam - drop unexpected word 'for' in comments 2022-06-30 15:56:57 +08:00
caamhash_desc.h crypto: caam - keep both virtual and dma key addresses 2019-08-09 15:11:49 +10:00
caampkc.c crypto: caam - Remove GFP_DMA and add DMA alignment padding 2023-01-06 17:15:47 +08:00
caampkc.h crypto: caam - add crypto_engine support for RSA algorithms 2020-02-22 09:25:48 +08:00
caamprng.c crypto: caam - Remove GFP_DMA and add DMA alignment padding 2023-01-06 17:15:47 +08:00
caamrng.c crypto: caam - Remove GFP_DMA and add DMA alignment padding 2023-01-06 17:15:47 +08:00
compat.h crypto: sha - split sha.h into sha1.h and sha2.h 2020-11-20 14:45:33 +11:00
ctrl.c crypto: caam - Remove GFP_DMA and add DMA alignment padding 2023-01-06 17:15:47 +08:00
ctrl.h crypto: caam - staticize caam_get_era() 2018-04-21 00:58:36 +08:00
debugfs.c crypto: caam - Replace DEFINE_SIMPLE_ATTRIBUTE with DEFINE_DEBUGFS_ATTRIBUTE 2021-02-10 17:55:57 +11:00
debugfs.h crypto: caam - Move debugfs fops into standalone file 2020-08-21 14:47:49 +10:00
desc.h crypto: caam - fix typos 2020-06-15 17:38:54 +10:00
desc_constr.h crypto: caam - Avoid GCC memset bug warning 2023-01-06 17:15:46 +08:00
dpseci-debugfs.c crypto: caam - Convert to DEFINE_SHOW_ATTRIBUTE 2020-09-25 17:48:16 +10:00
dpseci-debugfs.h crypto: caam/qi2 - Add printing dpseci fq stats using debugfs 2019-08-02 14:44:01 +10:00
dpseci.c crypto: caam/qi2 - add support for dpseci_reset() 2020-06-18 17:19:45 +10:00
dpseci.h crypto: caam/qi2 - add support for dpseci_reset() 2020-06-18 17:19:45 +10:00
dpseci_cmd.h crypto: caam/qi2 - add support for dpseci_reset() 2020-06-18 17:19:45 +10:00
error.c crypto: caam - add more RNG hw error codes 2020-07-31 18:25:28 +10:00
error.h crypto: caam - fix return code in completion callbacks 2019-08-09 15:11:45 +10:00
intern.h This update includes the following changes: 2022-05-27 18:06:49 -07:00
jr.c crypto: caam/rng - Add support for PRNG 2022-05-06 18:16:55 +08:00
jr.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
Kconfig This update includes the following changes: 2022-05-27 18:06:49 -07:00
key_gen.c crypto: caam - Remove GFP_DMA and add DMA alignment padding 2023-01-06 17:15:47 +08:00
key_gen.h crypto: caam - add Derived Key Protocol (DKP) support 2017-12-28 17:56:48 +11:00
Makefile This update includes the following changes: 2022-05-27 18:06:49 -07:00
pdb.h treewide: Replace zero-length arrays with flexible-array members 2022-02-17 07:00:39 -06:00
pkc_desc.c crypto: caam - select DMA address size at runtime 2019-08-30 18:05:30 +10:00
qi.c crypto: caam - Fix edesc/iv ordering mixup 2023-02-28 16:30:58 +08:00
qi.h crypto: caam - Remove GFP_DMA and add DMA alignment padding 2023-01-06 17:15:47 +08:00
regs.h crypto: caam - warn if blob_gen key is insecure 2022-12-02 18:12:39 +08:00
sg_sw_qm.h crypto: caam - use len instead of nents for bulding HW S/G table 2019-06-20 14:18:33 +08:00
sg_sw_qm2.h crypto: caam - use len instead of nents for bulding HW S/G table 2019-06-20 14:18:33 +08:00
sg_sw_sec4.h crypto: caam - use len instead of nents for bulding HW S/G table 2019-06-20 14:18:33 +08:00