Messages in this thread | | | Subject | Re: [PATCH -mm crypto] AES: x86_64 asm implementation optimization | From | "Huang, Ying" <> | Date | Thu, 17 Apr 2008 09:52:03 +0800 |
| |
On Wed, 2008-04-16 at 20:40 +0200, Sebastian Siewior wrote: [...] > >> >--- a/include/crypto/aes.h > >> >+++ b/include/crypto/aes.h > >> >@@ -19,6 +19,7 @@ > >> > > >> > struct crypto_aes_ctx { > >> > u32 key_length; > >> >+ u32 _pad1; > >> > >> Why is this pad required? Do you want special alignment of the keys? > > > >Because the key is loaded in 64bit in this patch, I want to align the > >key with 64bit address. > > Than this won't work all the time. To make it bulletproof > - set .cra_alignmask in the glue code properly > - use the attribute aligned thing > - retrieve your private struct via crypto_tfm_ctx_aligned()
As far as I know, the CRYPTO_MINALIGN is defined in include/linux/crypto.h as __alignof__(unsigned long long), and the __crt_ctx in crypto_tfm is aligned in CRYPTO_MINALIGN. So I think adding a pad is sufficient for x86_64 implementation.
Best Regards, Huang Ying
| |