Re: [PATCH] mm/memcg: Disable task obj_stock for PREEMPT_RT

From: Vlastimil Babka
Date: Wed Aug 04 2021 - 03:39:31 EST


On 8/4/21 1:21 AM, Thomas Gleixner wrote:
> /*
> * The only protection from memory hotplug vs. drain_stock races is
> * that we always operate on local CPU stock here with IRQ disabled
> */
> - local_irq_save(flags);
> + local_lock_irqsave(memcg_stock_lock, flags);
> ...
> if (use_task_obj_stock())
> drain_obj_stock(&stock->task_obj);
>
> which is incomprehensible garbage.
>
> The comment above the existing local_irq_save() is garbage w/o any local
> lock conversion already today (and even before the commit which
> introduced stock::task_obj) simply because that comment does not explain
> the why.

Michal, this seems to be your comment from commit 72f0184c8a00 ("mm, memcg:
remove hotplug locking from try_charge"). Was "memory hotplug" a mistake,
because the rest of the commit is about cpu hotplug, and I don't really see a
memory hotplug connection there?