linux_dsm_epyc7002/drivers/crypto/nx
Herbert Xu 030f4e9687 crypto: nx - Fix reentrancy bugs
This patch fixes a host of reentrancy bugs in the nx driver.  The
following algorithms are affected:

* CCM
* GCM
* CTR
* XCBC
* SHA256
* SHA512

The crypto API allows a single transform to be used by multiple
threads simultaneously.  For example, IPsec will use a single tfm
to process packets for a given SA.  As packets may arrive on
multiple CPUs that tfm must be reentrant.

The nx driver does try to deal with this by using a spin lock.
Unfortunately only the basic AES/CBC/ECB algorithms do this in
the correct way.

The symptom of these bugs may range from the generation of incorrect
output to memory corruption.

Cc: stable@vger.kernel.org
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2015-07-08 15:14:13 +08:00
..
Kconfig crypto: nx - add LE support to pSeries platform driver 2015-06-19 14:49:18 +08:00
Makefile crypto: nx - prevent nx 842 load if no hw driver 2015-06-03 10:51:23 +08:00
nx_csbcpb.h powerpc/crypto: nx driver code supporting nx encryption 2012-05-16 15:05:41 +10:00
nx_debugfs.c powerpc/crypto: debugfs routines and docs for the nx device driver 2012-05-16 15:05:45 +10:00
nx-842-crypto.c crypto: nx - replace NX842_MEM_COMPRESS with function 2015-06-15 18:15:57 +08:00
nx-842-platform.c crypto: nx - prevent nx 842 load if no hw driver 2015-06-03 10:51:23 +08:00
nx-842-powernv.c crypto: nx - replace NX842_MEM_COMPRESS with function 2015-06-15 18:15:57 +08:00
nx-842-pseries.c crypto: nx - add LE support to pSeries platform driver 2015-06-19 14:49:18 +08:00
nx-842.c crypto: nx - replace NX842_MEM_COMPRESS with function 2015-06-15 18:15:57 +08:00
nx-842.h crypto: nx - add LE support to pSeries platform driver 2015-06-19 14:49:18 +08:00
nx-aes-cbc.c crypto: nx - Moving NX-AES-CBC to be processed logic 2014-11-06 23:15:00 +08:00
nx-aes-ccm.c crypto: nx - Fix reentrancy bugs 2015-07-08 15:14:13 +08:00
nx-aes-ctr.c crypto: nx - Fix reentrancy bugs 2015-07-08 15:14:13 +08:00
nx-aes-ecb.c crypto: nx - Moving NX-AES-ECB to be processed logic 2014-11-06 23:15:01 +08:00
nx-aes-gcm.c crypto: nx - Fix reentrancy bugs 2015-07-08 15:14:13 +08:00
nx-aes-xcbc.c crypto: nx - Fix reentrancy bugs 2015-07-08 15:14:13 +08:00
nx-sha256.c crypto: nx - Fix reentrancy bugs 2015-07-08 15:14:13 +08:00
nx-sha512.c crypto: nx - Fix reentrancy bugs 2015-07-08 15:14:13 +08:00
nx.c crypto: nx - Fix reentrancy bugs 2015-07-08 15:14:13 +08:00
nx.h crypto: nx - Fix reentrancy bugs 2015-07-08 15:14:13 +08:00