|
@@ -1997,9 +1997,6 @@ static void *__slab_alloc(struct kmem_cache *s, gfp_t gfpflags, int node,
|
|
NULL, new.counters,
|
|
NULL, new.counters,
|
|
"__slab_alloc"));
|
|
"__slab_alloc"));
|
|
|
|
|
|
-load_freelist:
|
|
|
|
- VM_BUG_ON(!page->frozen);
|
|
|
|
-
|
|
|
|
if (unlikely(!object)) {
|
|
if (unlikely(!object)) {
|
|
c->page = NULL;
|
|
c->page = NULL;
|
|
stat(s, DEACTIVATE_BYPASS);
|
|
stat(s, DEACTIVATE_BYPASS);
|
|
@@ -2008,6 +2005,8 @@ load_freelist:
|
|
|
|
|
|
stat(s, ALLOC_REFILL);
|
|
stat(s, ALLOC_REFILL);
|
|
|
|
|
|
|
|
+load_freelist:
|
|
|
|
+ VM_BUG_ON(!page->frozen);
|
|
c->freelist = get_freepointer(s, object);
|
|
c->freelist = get_freepointer(s, object);
|
|
c->tid = next_tid(c->tid);
|
|
c->tid = next_tid(c->tid);
|
|
local_irq_restore(flags);
|
|
local_irq_restore(flags);
|