On Mon 13-06-22 13:50:28, Christian König wrote: > Am 13.06.22 um 09:45 schrieb Michal Hocko: > > On Sat 11-06-22 10:06:18, Christian König wrote: > > > Am 10.06.22 um 16:16 schrieb Michal Hocko: [...] > > > Alternative I could try to track the "owner" of a buffer (e.g. a shmem > > > file), but then it can happen that one processes creates the object and > > > another one is writing to it and actually allocating the memory. > > If you can enforce that the owner is really responsible for the > > allocation then all should be fine. That would require MAP_POPULATE like > > semantic and I suspect this is not really feasible with the existing > > userspace. It would be certainly hard to enforce for bad players. > > I've tried this today and the result was: "BUG: Bad rss-counter state > mm:000000008751d9ff type:MM_FILEPAGES val:-571286". > > The problem is once more that files are not informed when the process > clones. So what happened is that somebody called fork() with an mm_struct > I've accounted my pages to. The result is just that we messed up the > rss_stats and the the "BUG..." above. > > The key difference between normal allocated pages and the resources here is > just that we are not bound to an mm_struct in any way. It is not really clear to me what exactly you have tried. -- Michal Hocko SUSE Labs