]> git.baikalelectronics.ru Git - kernel.git/commit
[ARM] 3101/1: ARM EABI: slab memory must be 64-bit aligned
authorNicolas Pitre <nico@cam.org>
Sat, 14 Jan 2006 16:18:07 +0000 (16:18 +0000)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Sat, 14 Jan 2006 16:18:07 +0000 (16:18 +0000)
commit8cbc3f980223a18fcb905f902a1fca760f0ee4f8
tree75dbc2f10d349a7308e5dccaef85274b2f495c93
parentbc34beb61b65c6748abe24ac82e4104b80ed7acb
[ARM] 3101/1: ARM EABI: slab memory must be 64-bit aligned

Patch from Nicolas Pitre

Although ARM is still using 32-bit pointers, version 5 and later
versions of the ARM architecture introduced the ldrd and strd
instructions to move 64-bit data which must be 64-bit aligned in memory,
and the EABI includes new constraints on structure data alignment to
allow for the compiler to use those instructions. This means that any
slab allocation must start on a 64-bit boundary which is not equivalent
to BYTES_PER_WORD, especially on those architecture versions that
implements the ldrd/strd instructions.

Overriding the default alignment disables some slab debug features. If
those debug features are really needed then the kernel will have to be
compiled for version 4 of the ARM architecture.

Signed-off-by: Nicolas Pitre <nico@cam.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
include/asm-arm/page.h