linux/arch/x86/crypto
Mathias Krause 7c8d51848a crypto: aesni-intel - fix unaligned cbc decrypt for x86-32
The 32 bit variant of cbc(aes) decrypt is using instructions requiring
128 bit aligned memory locations but fails to ensure this constraint in
the code. Fix this by loading the data into intermediate registers with
load unaligned instructions.

This fixes reported general protection faults related to aesni.

References: https://bugzilla.kernel.org/show_bug.cgi?id=43223
Reported-by: Daniel <garkein@mailueberfall.de>
Cc: stable@kernel.org [v2.6.39+]
Signed-off-by: Mathias Krause <minipli@googlemail.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2012-05-31 20:53:22 +10:00
..
Makefile crypto: camellia - add assembler implementation for x86_64 2012-03-14 17:25:56 +08:00
aes-i586-asm_32.S crypto: aes - Export x86 AES encrypt/decrypt functions 2009-02-18 16:48:05 +08:00
aes-x86_64-asm_64.S crypto: aes - Export x86 AES encrypt/decrypt functions 2009-02-18 16:48:05 +08:00
aes_glue.c Merge branch 'modsplit-Oct31_2011' of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux 2011-11-06 19:44:47 -08:00
aesni-intel_asm.S crypto: aesni-intel - fix unaligned cbc decrypt for x86-32 2012-05-31 20:53:22 +10:00
aesni-intel_glue.c crypto: aesni-intel - move more common code to ablk_init_common 2012-05-15 17:25:33 +10:00
blowfish-x86_64-asm_64.S crypto: blowfish-x86_64 - improve x86_64 blowfish 4-way performance 2011-10-21 14:23:07 +02:00
blowfish_glue.c crypto: blowfish-x86_64 - set alignmask to zero 2012-02-25 17:20:24 +08:00
camellia-x86_64-asm_64.S crypto: camellia - add assembler implementation for x86_64 2012-03-14 17:25:56 +08:00
camellia_glue.c crypto: camellia-x86_64 - module init/exit functions should be static 2012-03-22 09:17:44 +08:00
crc32c-intel.c crypto: Add support for x86 cpuid auto loading for x86 crypto drivers 2012-01-26 16:48:10 -08:00
fpu.c crypto: aesni-intel - Merge with fpu.ko 2011-05-16 15:12:47 +10:00
ghash-clmulni-intel_asm.S crypto: ghash-clmulni-intel - Put proper .data section in place 2009-11-23 20:19:47 +08:00
ghash-clmulni-intel_glue.c crypto: Add support for x86 cpuid auto loading for x86 crypto drivers 2012-01-26 16:48:10 -08:00
salsa20-i586-asm_32.S [CRYPTO] salsa20_i586: Salsa20 stream cipher algorithm (i586 version) 2008-01-11 08:16:57 +11:00
salsa20-x86_64-asm_64.S [CRYPTO] salsa20: Add x86-64 assembly version 2008-01-11 08:16:57 +11:00
salsa20_glue.c [CRYPTO] salsa20: Add x86-64 assembly version 2008-01-11 08:16:57 +11:00
serpent-sse2-i586-asm_32.S crypto: serpent-sse2 - change transpose_4x4 to only use integer instructions 2012-01-13 16:38:40 +11:00
serpent-sse2-x86_64-asm_64.S crypto: serpent-sse2 - change transpose_4x4 to only use integer instructions 2012-01-13 16:38:40 +11:00
serpent_sse2_glue.c crypto: serpent-sse2 - combine ablk_*_init functions 2012-02-25 17:20:23 +08:00
sha1_ssse3_asm.S crypto: sha1 - SSSE3 based SHA1 implementation for x86-64 2011-08-10 19:00:29 +08:00
sha1_ssse3_glue.c crypto: sha1 - SSSE3 based SHA1 implementation for x86-64 2011-08-10 19:00:29 +08:00
twofish-i586-asm_32.S crypto: twofish-x86-asm - make assembler functions use twofish_ctx instead of crypto_tfm 2011-10-21 14:23:08 +02:00
twofish-x86_64-asm_64-3way.S crypto: twofish - add 3-way parallel x86_64 assembler implemention 2011-10-21 14:23:08 +02:00
twofish-x86_64-asm_64.S crypto: twofish-x86-asm - make assembler functions use twofish_ctx instead of crypto_tfm 2011-10-21 14:23:08 +02:00
twofish_glue.c crypto: twofish-x86_64/i586 - set alignmask to zero 2012-02-25 17:20:24 +08:00
twofish_glue_3way.c crypto: twofish-x86_64-3way - module init/exit functions should be static 2012-03-22 09:17:45 +08:00