|
@@ -2326,8 +2326,6 @@ redo:
|
|
|
if (freelist)
|
|
if (freelist)
|
|
|
goto load_freelist;
|
|
goto load_freelist;
|
|
|
|
|
|
|
|
- stat(s, ALLOC_SLOWPATH);
|
|
|
|
|
-
|
|
|
|
|
freelist = get_freelist(s, page);
|
|
freelist = get_freelist(s, page);
|
|
|
|
|
|
|
|
if (!freelist) {
|
|
if (!freelist) {
|
|
@@ -2432,10 +2430,10 @@ redo:
|
|
|
|
|
|
|
|
object = c->freelist;
|
|
object = c->freelist;
|
|
|
page = c->page;
|
|
page = c->page;
|
|
|
- if (unlikely(!object || !node_match(page, node)))
|
|
|
|
|
|
|
+ if (unlikely(!object || !node_match(page, node))) {
|
|
|
object = __slab_alloc(s, gfpflags, node, addr, c);
|
|
object = __slab_alloc(s, gfpflags, node, addr, c);
|
|
|
-
|
|
|
|
|
- else {
|
|
|
|
|
|
|
+ stat(s, ALLOC_SLOWPATH);
|
|
|
|
|
+ } else {
|
|
|
void *next_object = get_freepointer_safe(s, object);
|
|
void *next_object = get_freepointer_safe(s, object);
|
|
|
|
|
|
|
|
/*
|
|
/*
|