Herbert Xu wrote: > On Tue, May 18, 2010 at 10:17:35AM +0200, Adrian-Ken Rueegsegger wrote: >> As noted in my other mail [1] it seems like the HMAC tests trigger these >> errors. > > Thanks for all the detective work! > > I think the problem is this changeset: > > commit 6eb7228421c01ba48a6a88a7a5b3e71cfb70d4a9 > Author: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx> > Date: Tue Jan 8 17:16:44 2008 +1100 > > [CRYPTO] api: Set default CRYPTO_MINALIGN to unsigned long long > > Thanks to David Miller for pointing out that the SLAB (or SLOB/SLUB) > cache uses the alignment of unsigned long long if the architecture > kmalloc/slab alignment macros are not defined. > > This patch changes the CRYPTO_MINALIGN so that it uses the same default > value. > > Signed-off-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx> > > diff --git a/include/linux/crypto.h b/include/linux/crypto.h > index 0aba104..5e02d1b 100644 > --- a/include/linux/crypto.h > +++ b/include/linux/crypto.h > @@ -90,13 +90,11 @@ > #define CRYPTO_MINALIGN ARCH_KMALLOC_MINALIGN > #elif defined(ARCH_SLAB_MINALIGN) > #define CRYPTO_MINALIGN ARCH_SLAB_MINALIGN > +#else > +#define CRYPTO_MINALIGN __alignof__(unsigned long long) > #endif > > -#ifdef CRYPTO_MINALIGN > #define CRYPTO_MINALIGN_ATTR __attribute__ ((__aligned__(CRYPTO_MINALIGN))) > -#else > -#define CRYPTO_MINALIGN_ATTR > -#endif > > struct scatterlist; > struct crypto_ablkcipher; > > So evidently the assumption made in this change does not work on > SLOB since it only guarantees __alignof__(unsigned long). > > I think the simplest fix is to revert this changeset. When doing the revert it is necessary to either have ARCH_KMALLOC_MINALIGN defined or explicitly define CRYPTO_MINALIGN in the case where it is not. Otherwise shash compilation fails because it needs CRYPTO_MINALIGN. Regards, Adrian -- To unsubscribe from this list: send the line "unsubscribe linux-crypto" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html