On Thu, Feb 06, 2020 at 06:15:34PM +0100, Florian Bezdeka wrote: > commit 4549f7e5aa27ffc2cba63b5db8842a3b486f5688 upstream. > > The geode AES driver is heavily broken because it stores per-request > state in the transform context. So it will crash or produce the wrong > result if used by any of the many places in the kernel that issue > concurrent requests for the same transform object. > > This driver is also implemented using the deprecated blkcipher API, > which makes it difficult to fix, and puts it among the drivers > preventing that API from being removed. > > Convert this driver to use the skcipher API, and change it to not store > per-request state in the transform context. > > Fixes: 9fe757b ("[PATCH] crypto: Add support for the Geode LX AES hardware") > Signed-off-by: Eric Biggers <ebiggers@xxxxxxxxxx> > Signed-off-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx> > Signed-off-by: Florian Bezdeka <florian@xxxxxxxxxx> > --- > drivers/crypto/geode-aes.c | 442 ++++++++++++------------------------- > drivers/crypto/geode-aes.h | 15 +- > 2 files changed, 149 insertions(+), 308 deletions(-) Thanks for the backport, now applied. greg k-h