I've pushed out a new tree to git://git.infradead.org/users/willy/pagecache.git shrunk-page aka http://git.infradead.org/?p=users/willy/pagecache.git;a=shortlog;h=refs/heads/shrunk-page The observant will notice that it doesn't actually shrink struct page yet. However, we're getting close. What it does do is rename page->index to page->__folio_index to prevent new users of page->index from showing up. There are (I believe) three build failures in that tree: - fb_defio - fbtft - s390's gmap (and vsie? is that the same thing?) Other than that, allmodconfig builds on x86 and I'm convinced the build bots will tell me about anything else I missed. Lorenzo is working on fb_defio and fbtft will come along for the ride (it's a debug printk, so could just be deleted). s390 is complicated. I'd really appreciate some help. The next step is to feed most of the patches through the appropriate subsystems. Some have already gone into various maintainer trees (thanks!) There are still many more steps to go after this; eliminating memcg_data is closest to complete, and after that will come (in some order) eliminating ->lru, ->mapping, ->refcount and ->mapcount. We also need to move page_pool out into its own structure.