On Fri, Sep 17, 2021 at 11:57:35PM +0300, Kirill A. Shutemov wrote: > On Fri, Sep 17, 2021 at 12:31:36PM -0400, Johannes Weiner wrote: > > I didn't suggest to change what the folio currently already is for the > > page cache. I asked to keep anon pages out of it (and in the future > > potentially other random stuff that is using compound pages). > > It would mean that anon-THP cannot benefit from the work Willy did with > folios. Anon-THP is the most active user of compound pages at the moment > and it also suffers from the compound_head() plague. You ask to exclude > anon-THP siting *possible* future benefits for pagecache. > > Sorry, but this doesn't sound fair to me. Hold on Kirill. I'm not saying we shouldn't fix anonthp. But let's clarify the actual code in question in this specific patchset. You say anonthp cannot benefit from folio, but in the other email you say this patchset isn't doing the conversion yet. The code I'm specifically referring to here is the conversion of some code that encounters both anon and file pages - swap.c, memcontrol.c, workingset.c, and a few other places. It's a small part of the folio patches, but it's a big deal for the MM code conceptually. I'm requesting to drop those and just keep the page cache bits. Not because I think anonthp shouldn't be fixed, but because I think we're not in agreement yet on how they should be fixed. And it's somewhat independent of fixing the page cache interface now that people are waiting on much more desparately and acutely than we inside MM wait for a struct page cleanup. It's not good to hold them while we argue. Dropping the anon bits isn't final. Depending on how our discussion turns out, we can still put them in later or we can put in something new. The important thing is that the uncontroversial page cache bits aren't held up any longer while we figure it out. > If you want to limit usage of the new type to pagecache, the burden on you > to prove that it is useful and not just a dead weight. I'm not asking to add anything to the folio patches, just to remove some bits around the edges. And for the page cache bits: I think we have a rather large number of folks really wanting those. Now. Again, I think we should fix anonthp. But I also think we should really look at struct page more broadly. And I think we should have that discussion inside a forum of MM people that truly care. I'm just trying to unblock the fs folks at this point and merge what we can now.