mm: Move ARCH_SLAB_MINALIGN and ARCH_KMALLOC_MINALIGN to <linux/slab_def.h>
Acked-by: Herbert Xu <herbert@gondor.apana.org.au> Signed-off-by: David Woodhouse <David.Woodhouse@intel.com> Signed-off-by: Pekka Enberg <penberg@cs.helsinki.fi>
This commit is contained in:
Родитель
e40152ee1e
Коммит
1f0ce8b3dd
|
@ -16,6 +16,30 @@
|
|||
#include <linux/compiler.h>
|
||||
#include <linux/kmemtrace.h>
|
||||
|
||||
#ifndef ARCH_KMALLOC_MINALIGN
|
||||
/*
|
||||
* Enforce a minimum alignment for the kmalloc caches.
|
||||
* Usually, the kmalloc caches are cache_line_size() aligned, except when
|
||||
* DEBUG and FORCED_DEBUG are enabled, then they are BYTES_PER_WORD aligned.
|
||||
* Some archs want to perform DMA into kmalloc caches and need a guaranteed
|
||||
* alignment larger than the alignment of a 64-bit integer.
|
||||
* ARCH_KMALLOC_MINALIGN allows that.
|
||||
* Note that increasing this value may disable some debug features.
|
||||
*/
|
||||
#define ARCH_KMALLOC_MINALIGN __alignof__(unsigned long long)
|
||||
#endif
|
||||
|
||||
#ifndef ARCH_SLAB_MINALIGN
|
||||
/*
|
||||
* Enforce a minimum alignment for all caches.
|
||||
* Intended for archs that get misalignment faults even for BYTES_PER_WORD
|
||||
* aligned buffers. Includes ARCH_KMALLOC_MINALIGN.
|
||||
* If possible: Do not enable this flag for CONFIG_DEBUG_SLAB, it disables
|
||||
* some debug features.
|
||||
*/
|
||||
#define ARCH_SLAB_MINALIGN 0
|
||||
#endif
|
||||
|
||||
/*
|
||||
* struct kmem_cache
|
||||
*
|
||||
|
|
24
mm/slab.c
24
mm/slab.c
|
@ -144,30 +144,6 @@
|
|||
#define BYTES_PER_WORD sizeof(void *)
|
||||
#define REDZONE_ALIGN max(BYTES_PER_WORD, __alignof__(unsigned long long))
|
||||
|
||||
#ifndef ARCH_KMALLOC_MINALIGN
|
||||
/*
|
||||
* Enforce a minimum alignment for the kmalloc caches.
|
||||
* Usually, the kmalloc caches are cache_line_size() aligned, except when
|
||||
* DEBUG and FORCED_DEBUG are enabled, then they are BYTES_PER_WORD aligned.
|
||||
* Some archs want to perform DMA into kmalloc caches and need a guaranteed
|
||||
* alignment larger than the alignment of a 64-bit integer.
|
||||
* ARCH_KMALLOC_MINALIGN allows that.
|
||||
* Note that increasing this value may disable some debug features.
|
||||
*/
|
||||
#define ARCH_KMALLOC_MINALIGN __alignof__(unsigned long long)
|
||||
#endif
|
||||
|
||||
#ifndef ARCH_SLAB_MINALIGN
|
||||
/*
|
||||
* Enforce a minimum alignment for all caches.
|
||||
* Intended for archs that get misalignment faults even for BYTES_PER_WORD
|
||||
* aligned buffers. Includes ARCH_KMALLOC_MINALIGN.
|
||||
* If possible: Do not enable this flag for CONFIG_DEBUG_SLAB, it disables
|
||||
* some debug features.
|
||||
*/
|
||||
#define ARCH_SLAB_MINALIGN 0
|
||||
#endif
|
||||
|
||||
#ifndef ARCH_KMALLOC_FLAGS
|
||||
#define ARCH_KMALLOC_FLAGS SLAB_HWCACHE_ALIGN
|
||||
#endif
|
||||
|
|
Загрузка…
Ссылка в новой задаче