summaryrefslogtreecommitdiffstats
path: root/mm/slab.c
diff options
context:
space:
mode:
authorPekka Enberg <penberg@kernel.org>2011-03-11 17:11:19 +0100
committerPekka Enberg <penberg@kernel.org>2011-03-11 17:11:19 +0100
commit865d794d1f144d0f93796840d01696cd70647a8a (patch)
treeaab3956dabf6b8f95af4a3fd689b7ed24868e19e /mm/slab.c
parentMerge branch 'slab/rcu' into slab/next (diff)
parentRevert "slab: Fix missing DEBUG_SLAB last user" (diff)
downloadlinux-865d794d1f144d0f93796840d01696cd70647a8a.tar.xz
linux-865d794d1f144d0f93796840d01696cd70647a8a.zip
Merge branch 'slab/urgent' into slab/next
Diffstat (limited to 'mm/slab.c')
-rw-r--r--mm/slab.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/mm/slab.c b/mm/slab.c
index 7d92f08b88d7..a18ba57517af 100644
--- a/mm/slab.c
+++ b/mm/slab.c
@@ -2289,8 +2289,8 @@ kmem_cache_create (const char *name, size_t size, size_t align,
if (ralign < align) {
ralign = align;
}
- /* disable debug if not aligning with REDZONE_ALIGN */
- if (ralign & (__alignof__(unsigned long long) - 1))
+ /* disable debug if necessary */
+ if (ralign > __alignof__(unsigned long long))
flags &= ~(SLAB_RED_ZONE | SLAB_STORE_USER);
/*
* 4) Store it.
@@ -2316,8 +2316,8 @@ kmem_cache_create (const char *name, size_t size, size_t align,
*/
if (flags & SLAB_RED_ZONE) {
/* add space for red zone words */
- cachep->obj_offset += align;
- size += align + sizeof(unsigned long long);
+ cachep->obj_offset += sizeof(unsigned long long);
+ size += 2 * sizeof(unsigned long long);
}
if (flags & SLAB_STORE_USER) {
/* user store requires one word storage behind the end of