On Fri, Aug 27, 2021 at 11:47 AM Matthew Wilcox <willy@xxxxxxxxxxxxx> wrote: > > On Fri, Aug 27, 2021 at 10:07:16AM -0400, Johannes Weiner wrote: > > We have the same thoughts in MM and growing memory sizes. The DAX > > stuff said from the start it won't be built on linear struct page > > mappings anymore because we expect the memory modules to be too big to > > manage them with such fine-grained granularity. > > Well, I did. Then I left Intel, and Dan took over. Now we have a struct > page for each 4kB of PMEM. I'm not particularly happy about this change > of direction. Page-less DAX left more problems than it solved. Meanwhile, ZONE_DEVICE has spawned other useful things like peer-to-peer DMA. I am more encouraged by efforts to make the 'struct page' overhead disappear, first from Muchun Song for hugetlbfs and recently Joao Martins for device-dax. If anything, I think 'struct page' for PMEM / DAX *strengthens* the case for folios / better mechanisms to reduce the overhead of tracking 4K pages.