On Wed, 22 Jun 2011, David Rientjes wrote: > > * struct kmem_cache > > * > > * manages a cache. > > Looks like we lost some valuable information in the comments when this got > moved to slab.h :( Ok. If we want a description for these defines then lets use this. Subject: slab allocators: Provide generic description of alignment defines Provide description for alignment defines. Signed-off-by: Christoph Lameter <cl@xxxxxxxxx> --- include/linux/slab.h | 10 ++++++++++ 1 file changed, 10 insertions(+) Index: linux-2.6/include/linux/slab.h =================================================================== --- linux-2.6.orig/include/linux/slab.h 2011-06-23 09:26:55.000000000 -0500 +++ linux-2.6/include/linux/slab.h 2011-06-23 09:33:46.000000000 -0500 @@ -133,12 +133,22 @@ unsigned int kmem_cache_size(struct kmem #define KMALLOC_MAX_SIZE (1UL << KMALLOC_SHIFT_HIGH) #define KMALLOC_MAX_ORDER (KMALLOC_SHIFT_HIGH - PAGE_SHIFT) +/* + * Some archs want to perform DMA into kmalloc caches and need a guaranteed + * alignment larger than the alignment of a 64-bit integer. + * Setting ARCH_KMALLOC_MINALIGN in arch headers allows that. + */ #ifdef ARCH_DMA_MINALIGN #define ARCH_KMALLOC_MINALIGN ARCH_DMA_MINALIGN #else #define ARCH_KMALLOC_MINALIGN __alignof__(unsigned long long) #endif +/* + * Setting ARCH_SLAB_MINALIGN in arch headers allows a different alignment. + * Intended for arches that get misalignment faults even for 64 bit integer + * aligned buffers. + */ #ifndef ARCH_SLAB_MINALIGN #define ARCH_SLAB_MINALIGN __alignof__(unsigned long long) #endif -- To unsubscribe from this list: send the line "unsubscribe netfilter" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html