Re: [PATCH] x86/mm/hotplug: fix BUG_ON() after hotremove

From: Jerome Glisse
Date: Wed Jun 07 2017 - 11:03:07 EST


On Wed, Jun 07, 2017 at 01:47:15PM +0300, Kirill A. Shutemov wrote:
> On Tue, Jun 06, 2017 at 01:35:12PM -0400, Jérôme Glisse wrote:
> > With commit af2cf278ef4f we no longer free pud so that we
> > do not have synchronize all pgd on hotremove/vfree. But the
> > new 5 level page table code re-added that code f2a6a705 and
> > thus we now trigger a BUG_ON() l128 in sync_global_pgds()
> >
> > This patch remove free_pud() like in af2cf278ef4f
>
> Good catch. Thanks!
>
> But I think we only need to skip free_pud_table() for 4-level paging.
> If we don't we would leave 513 page tables around instead of one in
> 5-level paging case.
>
> I don't think it's acceptable.
>
> And please use patch subject lines along with commit hashes to simplify
> reading commit message.
>

I sent a v2 that disable free_pud in 4 level page table config.
Note that your patchset that allow switching between 4 and 5 at
boot time will need to update that code. As this patch is a fix
and your boot time switching is an RFC i assume the fix will go
in first.

Cheers,
Jérôme