]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
crypto: ghash-clmulni-intel - use C implementation for setkey()
authorArd Biesheuvel <ard.biesheuvel@linaro.org>
Thu, 27 Mar 2014 17:14:40 +0000 (18:14 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 13 May 2014 12:11:30 +0000 (14:11 +0200)
commit89a3abc1fd0dd979929362a2a355d899f4574dab
treea78ec88835316fda87b0c696a7e195b559ffd5ce
parenta2295c4263fe35f674f0061fe0419c73238d5b5b
crypto: ghash-clmulni-intel - use C implementation for setkey()

commit 8ceee72808d1ae3fb191284afc2257a2be964725 upstream.

The GHASH setkey() function uses SSE registers but fails to call
kernel_fpu_begin()/kernel_fpu_end(). Instead of adding these calls, and
then having to deal with the restriction that they cannot be called from
interrupt context, move the setkey() implementation to the C domain.

Note that setkey() does not use any particular SSE features and is not
expected to become a performance bottleneck.

Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Acked-by: H. Peter Anvin <hpa@linux.intel.com>
Fixes: 0e1227d356e9b (crypto: ghash - Add PCLMULQDQ accelerated implementation)
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
arch/x86/crypto/ghash-clmulni-intel_asm.S
arch/x86/crypto/ghash-clmulni-intel_glue.c