Re: [RFC v2 12/34] mm, slub: move disabling/enabling irqs to ___slab_alloc()

From: Mike Galbraith
Date: Tue Jul 06 2021 - 00:39:06 EST


Greetings,

On Wed, 2021-06-09 at 13:38 +0200, Vlastimil Babka wrote:
> @@ -3313,6 +3320,8 @@ int kmem_cache_alloc_bulk(struct kmem_cache *s,
> gfp_t flags, size_t size,
> */
> c->tid = next_tid(c->tid);
>
> + local_irq_enable();
> +
> /*
> * Invoking slow path likely have side-effect
> * of re-populating per CPU c->freelist

This addition should have been followed by removal of the one in the
error path. At the end of the series, RT ends up doing a double
local_unlock_irq() instead of post ___slab_alloc() slub_put_cpu_ptr().

-Mike