slab: fix slab flags for archs use alignment larger 64-bit
Subsystems (2)
sorry... patch also sent to [email protected]
Quoted 27 lines · Giuseppe CAVALLARO
I think, this fix is necessary for all the architectures want to perform DMA into kmalloc caches and need a guaranteed alignment larger than the alignment of a 64-bit integer.
An example is sh architecture whereARCH_KMALLOC_MINALIGNisL1_CACHE_BYTES.As side effect, these kind of objects cannot be visible within the
/proc/slab_allocatorsfile.Signed-off-by Giuseppe Cavallaro <[email protected]>--- mm/slab.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-)mm/slab.c +1
-1@@ -2262,7 +2262,7 @@ kmem_cache_create (const char *name, size_t size, size_t align, ralign = align; }/* disable debug if necessary */ -if (ralign > __alignof__(unsigned long long )) +if (ralign >ARCH_KMALLOC_MINALIGN ) flags &= ~(SLAB_RED_ZONE |SLAB_STORE_USER );/* * 4) Store it.
PATCH 1/1 slab: fix slab flags for archs use alignment larger 64-bit
I think, this fix is necessary for all the architectures want to perform DMA into kmalloc caches and need a guaranteed alignment larger than the alignment of a 64-bit integer.
An example is sh architecture where ARCH_KMALLOC_MINALIGN is L1_CACHE_BYTES.
As side effect, these kind of objects cannot be visible within the /proc/slab_allocators file.
--- mm/slab.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-)
mm/slab.c +1 -1
@@ -2262,7 +2262,7 @@ kmem_cache_create (const char *name, size_t size, size_t align, ralign = align; }/* disable debug if necessary */ -if (ralign > __alignof__(unsigned long long )) +if (ralign >ARCH_KMALLOC_MINALIGN ) flags &= ~(SLAB_RED_ZONE |SLAB_STORE_USER );/* * 4) Store it.
Signature · 1 line
1.5.6.6