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

From: Ingo Molnar
Date: Fri Apr 27 2018 - 02:28:40 EST



* 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.

Thanks,

Ingo