Re: [PATCH] Revert "x86/mm: implement free pmd/pte page interfaces"

From: Kani, Toshi
Date: Fri Apr 27 2018 - 15:49:14 EST


On Fri, 2018-04-27 at 08:28 +0200, Ingo Molnar wrote:
> * Kani, Toshi <toshi.kani@xxxxxxx> wrote:
>
> > On Thu, 2018-04-26 at 17:14 +0200, Joerg Roedel wrote:
> > > From: Joerg Roedel <jroedel@xxxxxxx>
> > >
> > > This reverts commit 28ee90fe6048fa7b7ceaeb8831c0e4e454a4cf89.
> > >
> > > This commit is broken for x86, as it unmaps the PTE and PMD
> > > pages and immediatly frees them without doing a TLB flush.
> > >
> > > Further this lacks synchronization with other page-tables in
> > > the system when the PMD pages are not shared between
> > > mm_structs.
> > >
> > > On x86-32 with PAE and PTI patches on-top this patch
> > > triggers the BUG_ON in vmalloc_sync_one() because the kernel
> > > and the process page-table were not synchronized.
> > >
> > > Signed-off-by: Joerg Roedel <jroedel@xxxxxxx>
> >
> > I do not agree with the comments and this revert. Let's discuss further
> > on the original thread.
>
> The original patch is totally broken (it's based on a misunderstanding), so unless
> you have a fix the revert is justified.

I am working on a fix on top of this patch.

Thanks,
-Toshi