On Tue, 2010-05-18 at 20:27 +1000, 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 <herb...@gondor.apana.org.au> > 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 <herb...@gondor.apana.org.au> > > 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).
Bingo. Feel free to stick this on your revert: Acked-by: Matt Mackall <m...@selenic.com> Looks like we should ensure that ARCH_KMALLOC_MINALIGN is always defined. -- Mathematics is the supreme nostalgia of our time. -- To unsubscribe from this list: send the line "unsubscribe linux-crypto" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html