On Tue 13-08-19 10:45:17, Joel Fernandes wrote: > On Tue, Aug 13, 2019 at 04:14:32PM +0200, Michal Hocko wrote: > [snip] > > > > If the API is flawed then this is likely going > > > > to kick us later and will be hard to fix. I am still not convinced about > > > > the swap part of the thing TBH. > > > > > > Ok, then let us discuss it. As I mentioned before, without this we lose the > > > access information due to MADVISE or swapping. Minchan and Konstantin both > > > suggested it that's why I also added it (other than me also realizing that it > > > is neeed). > > > > I have described my concerns about the general idle bit behavior after > > unmapping pointing to discrepancy with !anon pages. And I believe those > > haven't been addressed yet. > > You are referring to this post right? > https://lkml.org/lkml/2019/8/6/637 > > Specifically your question was: > How are you going to handle situation when the page is unmapped and refaulted again (e.g. a normal reclaim of a pagecache)? > > Currently I don't know how to implement that. Would it work if I stored the > page-idle bit information in the pte of the file page (after the page is > unmapped by reclaim?). It would work as long as we keep page tables around after unmap. As they are easily reconstructable this is a good candidate for reclaim as well. > Also, this could be a future extension - the Android heap profiler does not > need it right now. I know that's not a good argument but it is useful to say > that it doesn't affect a real world usecase.. the swap issue on the other > hand, is a real usecase. Since the profiler should not get affected by > swapping or MADVISE_COLD hints. > > > Besides that I am still not seeing any > > description of the usecase that would suffer from the lack of the > > functionality in changelogs. > > You are talking about the swap usecase? The usecase is well layed out in v5 > 2/6. Did you see it? https://lore.kernel.org/patchwork/patch/1112283/ For some reason I've missed it. I will coment on that. -- Michal Hocko SUSE Labs