From 4a6dc9fb3731f8cd9501980f61debe750f2a517c Mon Sep 17 00:00:00 2001 From: Christoph Lameter Date: Tue, 17 May 2011 16:29:31 -0500 Subject: [PATCH] --- yaml --- r: 248626 b: refs/heads/master c: 442b06bcea23a01934d3da7ec5898fa154a6cafb h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/mm/slub.c | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index 40a1a05c0d33..b7269be17f11 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: bd07d87fd4b8a6af9820544b6bc6c37215d6f8ad +refs/heads/master: 442b06bcea23a01934d3da7ec5898fa154a6cafb diff --git a/trunk/mm/slub.c b/trunk/mm/slub.c index 9f7bb93e17ec..9ee6f515736d 100644 --- a/trunk/mm/slub.c +++ b/trunk/mm/slub.c @@ -1881,6 +1881,8 @@ static void *__slab_alloc(struct kmem_cache *s, gfp_t gfpflags, int node, page->inuse++; page->freelist = get_freepointer(s, object); + deactivate_slab(s, c); + c->page = NULL; c->node = NUMA_NO_NODE; goto unlock_out; } @@ -2112,7 +2114,7 @@ static __always_inline void slab_free(struct kmem_cache *s, tid = c->tid; barrier(); - if (likely(page == c->page && c->node != NUMA_NO_NODE)) { + if (likely(page == c->page)) { set_freepointer(s, object, c->freelist); if (unlikely(!this_cpu_cmpxchg_double(