On Tue, 25 Aug 2020, Alex Shi wrote: > reproduce using our linux-mm random bug collection on NUMA systems. > >> > >> OK, I must have missed that this was on ppc. The order makes more sense > >> now. I will have a look at this next week. > > > > OK, so I've had a look and I know what's going on there. The > > move_pages12 is migrating hugetlb pages. Those are not charged to any > > memcg. We have completely missed this case. There are two ways going > > around that. Drop the warning and update the comment so that we do not > > forget about that or special case hugetlb pages. > > > > I think the first option is better. > > > > > Hi Michal, > > Compare to ignore the warning which is designed to give, seems addressing > the hugetlb out of charge issue is a better solution, otherwise the memcg > memory usage is out of control on hugetlb, is that right? Please don't suppose that this is peculiar to hugetlb: I'm not testing hugetlb at all (sorry), but I see the VM_WARN_ON_ONCE from mem_cgroup_page_lruvec(), and from mem_cgroup_migrate(), and from mem_cgroup_swapout(). In all cases seen on a PageAnon page (well, in one case PageKsm). And not related to THP either: seen also on machine incapable of THP. Maybe there's an independent change in 5.9-rc that's defeating expectations here, or maybe they were never valid. Worth investigating, even though the patch is currently removed, to find out why expectations were wrong. You'll ask me for more info, stacktraces etc, and I'll say sorry, no time today. Please try the swapping tests I sent before. And may I say, the comment /* Readahead page is charged too, to see if other page uncharged */ is nonsensical to me, and much better deleted: maybe it would make some sense if the reader could see the comment it replaces - as they can in the patch - but not in the resulting source file. Hugh