On 11.09.19 15:51, Michal Hocko wrote: > On Wed 11-09-19 15:20:02, Michal Hocko wrote: > [...] >>> 4. Continuously report, not the "one time report everything" approach. >> >> So you mean the allocator reporting this rather than an external code to >> poll right? I do not know, how much this is nice to have than must have? > > Another idea that I haven't really thought through so it might turned > out to be completely bogus but let's try anyway. Your "report everything" > just made me look and realize that free_pages_prepare already performs > stuff that actually does something similar yet unrelated. > > We do report to special page poisoning, zeroying or > CONFIG_DEBUG_PAGEALLOC to unmap the address from the kernel address > space. This sounds like something fitting your model no? > AFAIKS, the poisoning/unmapping is done whenever a page is freed. I don't quite see yet how that would help to remember if a page was already reported. After reporting the page we would have to switch some state (Nitesh: bitmap bit, Alexander: page flag) to identify that. Of course, we could map the page and treat that as "the state" when we reported it, but I am not sure that's such a good idea :) As always, I might be very wrong ... -- Thanks, David / dhildenb