On Fri, Jan 08, 2021 at 06:17:06PM +0100, Ard Biesheuvel wrote: > diff --git a/include/crypto/skcipher.h b/include/crypto/skcipher.h > index 6a733b171a5d..aa133dc3bf39 100644 > --- a/include/crypto/skcipher.h > +++ b/include/crypto/skcipher.h > @@ -128,7 +128,7 @@ struct skcipher_alg { > MAX_SYNC_SKCIPHER_REQSIZE + \ > (!(sizeof((struct crypto_sync_skcipher *)1 == \ > (typeof(tfm))1))) \ > - ] CRYPTO_MINALIGN_ATTR; \ > + ] __aligned(ARCH_SLAB_MINALIGN); \ > struct skcipher_request *name = (void *)__##name##_desc >
Are you sure this is okay? __alignof__(struct skcipher_request) will still be CRYPTO_MINALIGN_ATTR, since it contains a field with that alignment. So technically isn't the full alignment still needed, as the compiler can assume that struct skcipher_request is CRYPTO_MINALIGN_ATTR-aligned? - Eric