On Sat, Oct 23, 2021 at 03:22:35AM +0100, Matthew Wilcox wrote: > You can see folios as a first step to disentangling some of the users > of struct page. It certainly won't be the last step. But I'd really > like to stop having theoretical discussions of memory types and get on > with writing code. Agreed. I think folios are really important to sort out the mess around compound pages ASAP. I'm a lot more lukewarm on the other splits. Yes, struct page is a mess, but I'm not sure creating gazillions of new types solve that mess. Getting rid of a bunch of the crazy optimizations that abuse struct page fields might a better first step - or rather after the first step of folios which fix real bugs in compount handling and do enable sane handling of compound pages in the page cache. > If that means we modify the fs APIs again in twelve > months to replace folios with file_mem, well, I'm OK with that. I suspect we won't even need that so quickly if at all, but I'd rather have a little more churn rather than blocking this important work forever.