diff options
author | Herbert Xu <herbert@gondor.apana.org.au> | 2015-07-07 17:30:25 +0800 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2015-08-16 20:52:16 -0700 |
commit | 2d089963836a8e884df3788fad73d5048d0d88b1 (patch) | |
tree | f43e4fe866f578d24dca55acd10e325f2358d5f5 /arch/sparc | |
parent | 71a0c1ecf7004a5949cceaa4bb1240923e9d2000 (diff) |
crypto: nx - Fix reentrancy bugs
commit 030f4e968741d65aea9cd5f7814d1164967801ef upstream.
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.
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'arch/sparc')
0 files changed, 0 insertions, 0 deletions