aboutsummaryrefslogtreecommitdiffstats
path: root/crypto/Kconfig
diff options
context:
space:
mode:
authorHuang Ying <ying.huang@intel.com>2009-03-29 03:41:20 -0400
committerHerbert Xu <herbert@gondor.apana.org.au>2009-06-02 00:04:16 -0400
commit2cf4ac8beb9dc50a315a6155b7b70e754d511958 (patch)
tree0c4043a1455ab581b4e505604df290acd59ef79e /crypto/Kconfig
parent150c7e85526e80474b87004f4b420e8834fdeb43 (diff)
crypto: aes-ni - Add support for more modes
Because kernel_fpu_begin() and kernel_fpu_end() operations are too slow, the performance gain of general mode implementation + aes-aesni is almost all compensated. The AES-NI support for more modes are implemented as follow: - Add a new AES algorithm implementation named __aes-aesni without kernel_fpu_begin/end() - Use fpu(<mode>(AES)) to provide kenrel_fpu_begin/end() invoking - Add <mode>(AES) ablkcipher, which uses cryptd(fpu(<mode>(AES))) to defer cryption to cryptd context in soft_irq context. Now the ctr, lrw, pcbc and xts support are added. Performance testing based on dm-crypt shows that cryption time can be reduced to 50% of general mode implementation + aes-aesni implementation. Signed-off-by: Huang Ying <ying.huang@intel.com> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'crypto/Kconfig')
-rw-r--r--crypto/Kconfig5
1 files changed, 5 insertions, 0 deletions
diff --git a/crypto/Kconfig b/crypto/Kconfig
index 66ff22a36ed9..4dfdd03e708f 100644
--- a/crypto/Kconfig
+++ b/crypto/Kconfig
@@ -491,6 +491,7 @@ config CRYPTO_AES_NI_INTEL
491 select CRYPTO_AES_X86_64 491 select CRYPTO_AES_X86_64
492 select CRYPTO_CRYPTD 492 select CRYPTO_CRYPTD
493 select CRYPTO_ALGAPI 493 select CRYPTO_ALGAPI
494 select CRYPTO_FPU
494 help 495 help
495 Use Intel AES-NI instructions for AES algorithm. 496 Use Intel AES-NI instructions for AES algorithm.
496 497
@@ -510,6 +511,10 @@ config CRYPTO_AES_NI_INTEL
510 511
511 See <http://csrc.nist.gov/encryption/aes/> for more information. 512 See <http://csrc.nist.gov/encryption/aes/> for more information.
512 513
514 In addition to AES cipher algorithm support, the
515 acceleration for some popular block cipher mode is supported
516 too, including ECB, CBC, CTR, LRW, PCBC, XTS.
517
513config CRYPTO_ANUBIS 518config CRYPTO_ANUBIS
514 tristate "Anubis cipher algorithm" 519 tristate "Anubis cipher algorithm"
515 select CRYPTO_ALGAPI 520 select CRYPTO_ALGAPI