Re: [PATCH v6 00/27] Memory Folios

Jason Gunthorpe
2021-04-01T17:44:04Z

On Thu, Apr 01, 2021 at 01:52:01PM +0100, Matthew Wilcox wrote:
> On Thu, Apr 01, 2021 at 09:28:03AM -0300, Jason Gunthorpe wrote:
> > On Thu, Apr 01, 2021 at 12:26:56PM +0100, Matthew Wilcox wrote:
> > > On Thu, Apr 01, 2021 at 08:05:37AM +0100, Christoph Hellwig wrote:
> > > > On Wed, Mar 31, 2021 at 07:47:01PM +0100, Matthew Wilcox (Oracle) wrote:
> > > > > - Mirror members of struct page (for pagecache / anon) into struct folio,
> > > > > so (eg) you can use folio->mapping instead of folio->page.mapping
> > > >
> > > > Eww, why?
> > >
> > > So that eventually we can rename page->mapping to page->_mapping and
> > > prevent the bugs from people doing page->mapping on a tail page. eg
> > > https://lore.kernel.org/linux-mm/alpine.LSU.2.11.2103102214170.7159@eggly.anvils/
> >
> > Is that gcc structure layout randomization stuff going to be a problem
> > here?
> >
> > Add some
> > static_assert(offsetof(struct folio,..) == offsetof(struct page,..))
> >
> > tests to force it?
>
> You sound like the kind of person who hasn't read patch 1.

Yes, I missed this hunk :)

Jason