Re: [GIT PULL] Lockless SLUB slowpaths for v3.1-rc1

From: Eric Dumazet
Date: Sat Jul 30 2011 - 02:33:43 EST


Le vendredi 29 juillet 2011 Ã 16:18 -0700, Andi Kleen a Ãcrit :
> Christoph Lameter <cl@xxxxxxxxx> writes:
>
> > On Fri, 29 Jul 2011, Pekka Enberg wrote:
> >
> >> We haven't come up with a solution to keep struct page size the same but I
> >> think it's a reasonable trade-off.
> >
> > The change requires the page struct to be aligned to a double word
> > boundary.
>
> Why is that?
>

Because cmpxchg16b is believed to require a 16bytes alignment.

http://siyobik.info/main/reference/instruction/CMPXCHG8B%2FCMPXCHG16B

64-Bit Mode Exceptions
...

#GP(0) If the memory address is in a non-canonical form. If memory
operand for CMPXCHG16B is not aligned on a 16-byte boundary. If
CPUID.01H:ECX.CMPXCHG16B[bit 13] = 0.



--
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/