Re: [patch] slab: always follow arch requested alignments

From: Christoph Lameter
Date: Wed Jul 26 2006 - 07:28:19 EST


On Wed, 26 Jul 2006, Pekka Enberg wrote:

> Hi Heiko,
>
> On 7/22/06, Heiko Carstens <heiko.carstens@xxxxxxxxxx> wrote:
> > Sorry, I should have mentioned it: on s390 (32 bit) we set
> > #define ARCH_KMALLOC_MINALIGN 8.
> > This is needed since our common I/O layer allocates data structures that
> > need
> > to have an eight byte alignment. Now, if I turn on DEBUG_SLAB, nothing works
> > anymore, simply because the slab cache code ignores ARCH_KMALLOC_MINALIGN
> > and
> > uses an BYTES_PER_WORD alignment instead, which it shouldn't:
>
> This is the bit I missed, sorry. I thought that the s390 hardware
> mandates 8 byte alignment, but it really doesn't. So you're absolutely
> right, you don't need to set ARCH_SLAB_MINALIGN and the alignment
> calculation in slab is indeed broken for both, architecture and caller
> mandated alignments.

Well that is a bit far reaching. What is broken is that SLAB_RED_ZONE and
SLAB_STORE_USER ignore any given alignment. If you want to fix that then
you need to modify how both debugging methods work.


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/