Re: [PATCH 0/7] Record the mm_struct in the page table pages

From: Mike Rapoport
Date: Sun May 24 2020 - 03:42:47 EST


On Tue, Apr 28, 2020 at 06:51:26PM -0700, Matthew Wilcox wrote:
> On Wed, Apr 29, 2020 at 03:26:24AM +0300, Kirill A. Shutemov wrote:
> > On Tue, Apr 28, 2020 at 12:44:42PM -0700, Matthew Wilcox wrote:
> > > From: "Matthew Wilcox (Oracle)" <willy@xxxxxxxxxxxxx>
> > >
> > > Pages which are in use as page tables have some space unused in struct
> > > page. It would be handy to have a pointer to the struct mm_struct that
> > > they belong to so that we can handle uncorrectable errors in page tables
> > > more gracefully. There are a few other things we could use it for too,
> > > such as checking that the page table entry actually belongs to the task
> > > we think it ought to. This patch series does none of that, but does
> > > lay the groundwork for it.
> > >
> > > Matthew Wilcox (Oracle) (7):
> >
> > How does it work for kernel side of virtual address space?
>
> init_mm

A note to keep in mind is that most of the kernel page tables are seen
as PG_reserved rather than PageTable().

> > And your employer may be interested in semantics around
> > CONFIG_ARCH_WANT_HUGE_PMD_SHARE :P
>
> I was thinking about that. Right now, it's only useful for debugging
> purposes (as you point out in a later email). I think it's OK if shared
> PMDs aren't supported as well as regular PTEs, just because there are
> so few of them that uncorrectable errors are less likely to strike in
> those pages.
>

--
Sincerely yours,
Mike.