On Wed, 21 May 2008 19:25:54 +0800 Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx> wrote: > On Wed, May 21, 2008 at 08:01:12PM +0900, FUJITA Tomonori wrote: > > > > Why do algorithms require alignments bigger than ARCH_KMALLOC_MINALIGN? > > Because the hardware may require it. For example, the VIA Padlock > will fault unless the buffers are 16-byte aligned (it being an > x86-32 platform). OK, thanks. So it's about hardware requrement. Let me make sure if I understand crypto alignment issue. __crt_ctx needs ARCH_KMALLOC_MINALIGN alignment only because of crypto hardware. If I misunderstand it, can you answer my question in the previous mail (it's the part that you cut)? That is, why does __crt_ctx need ARCH_KMALLOC_MINALIGN alignment with software algorithms. The VIA Padlock likes 16-byte aligned __crt_ctx. On x86-32 platform, ARCH_KMALLOC_MINALIGN is not defined, so __crt_ctx is 8-byte aligned. struct aes_ctx of The VIA Padlock may not be aligned so you may need ALIGN hack every time. But ARCH_KMALLOC_MINALIGN is 128 bytes on some architectures. In this case, __crt_ctx is 128-byte aligned and struct aes_ctx of The VIA Padlock is guaranteed to be aligned nicely. -- To unsubscribe from this list: send the line "unsubscribe linux-ide" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html