diff --git a/mm/slub.c b/mm/slub.c index 4ea7f1a22a9468f332f529c60e7be0b85a97616f..4aad32d2e60d22b659efa63f8728e67d1ce7f1e1 100644 --- a/mm/slub.c +++ b/mm/slub.c @@ -1884,7 +1884,8 @@ static void *__slab_alloc(struct kmem_cache *s, gfp_t gfpflags, int node, deactivate_slab(s, c); c->page = NULL; c->node = NUMA_NO_NODE; - goto unlock_out; + local_irq_restore(flags); + return object; } /*