diff options
author | Huang Ying <ying.huang@intel.com> | 2009-01-09 16:49:30 +1100 |
---|---|---|
committer | Herbert Xu <herbert@gondor.apana.org.au> | 2009-02-18 16:48:04 +0800 |
commit | 109568e110ed67d4be1b28609b9fa00fca97f8eb (patch) | |
tree | f40a1c6a35bb45abf7edcf8ab55ed75af6d405fb /include/crypto | |
parent | 8eb2dfac41c71701bb741f496f0cb7b7e4a3c3f6 (diff) | |
download | lwn-109568e110ed67d4be1b28609b9fa00fca97f8eb.tar.gz lwn-109568e110ed67d4be1b28609b9fa00fca97f8eb.zip |
crypto: aes - Move key_length in struct crypto_aes_ctx to be the last field
The Intel AES-NI AES acceleration instructions need key_enc, key_dec
in struct crypto_aes_ctx to be 16 byte aligned, it make this easier to
move key_length to be the last one.
Signed-off-by: Huang Ying <ying.huang@intel.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'include/crypto')
-rw-r--r-- | include/crypto/aes.h | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/include/crypto/aes.h b/include/crypto/aes.h index 656a4c66a568..7524ba3b6f3c 100644 --- a/include/crypto/aes.h +++ b/include/crypto/aes.h @@ -17,10 +17,14 @@ #define AES_MAX_KEYLENGTH (15 * 16) #define AES_MAX_KEYLENGTH_U32 (AES_MAX_KEYLENGTH / sizeof(u32)) +/* + * Please ensure that the first two fields are 16-byte aligned + * relative to the start of the structure, i.e., don't move them! + */ struct crypto_aes_ctx { - u32 key_length; u32 key_enc[AES_MAX_KEYLENGTH_U32]; u32 key_dec[AES_MAX_KEYLENGTH_U32]; + u32 key_length; }; extern const u32 crypto_ft_tab[4][256]; |