On Wed, Mar 12, 2025 at 10:48:12PM -0700, Shakeel Butt wrote: > We never charge the page counters of root memcg, so there is no need to > put root memcg in the memcg stock. At the moment, refill_stock() can be > called from try_charge_memcg(), obj_cgroup_uncharge_pages() and > mem_cgroup_uncharge_skmem(). > > The try_charge_memcg() and mem_cgroup_uncharge_skmem() are never called > with root memcg, so those are fine. However obj_cgroup_uncharge_pages() > can potentially call refill_stock() with root memcg if the objcg object > has been reparented over to the root memcg. Let's just avoid > refill_stock() from obj_cgroup_uncharge_pages() for root memcg. > > Signed-off-by: Shakeel Butt <shakeel.butt@xxxxxxxxx> Acked-by: Johannes Weiner <hannes@xxxxxxxxxxx>