On Mon, Aug 2, 2021 at 7:38 AM Waiman Long <longman@xxxxxxxxxx> wrote: > > When mod_objcg_state() is called with a pgdat that is different from > that in the obj_stock, the old lruvec data cached in obj_stock are > flushed out. Unfortunately, they were flushed to the new pgdat and > so the data go to the wrong node. This will screw up the slab data > reported in /sys/devices/system/node/node*/meminfo. > > Fix that by flushing the data to the cached pgdat instead. > > Fixes: 68ac5b3c8db2 ("mm/memcg: cache vmstat data in percpu memcg_stock_pcp") > Signed-off-by: Waiman Long <longman@xxxxxxxxxx> > Acked-by: Michal Hocko <mhocko@xxxxxxxx> Reviewed-by: Shakeel Butt <shakeelb@xxxxxxxxxx>