RE: [PATCH v6 07/16] x86/mm/64: Disable PMD page mapping of vmemmap

From: Song Bao Hua (Barry Song)
Date: Tue Nov 24 2020 - 05:31:54 EST




> -----Original Message-----
> From: owner-linux-mm@xxxxxxxxx [mailto:owner-linux-mm@xxxxxxxxx] On
> Behalf Of Oscar Salvador
> Sent: Tuesday, November 24, 2020 11:25 PM
> To: Muchun Song <songmuchun@xxxxxxxxxxxxx>
> Cc: corbet@xxxxxxx; mike.kravetz@xxxxxxxxxx; tglx@xxxxxxxxxxxxx;
> mingo@xxxxxxxxxx; bp@xxxxxxxxx; x86@xxxxxxxxxx; hpa@xxxxxxxxx;
> dave.hansen@xxxxxxxxxxxxxxx; luto@xxxxxxxxxx; peterz@xxxxxxxxxxxxx;
> viro@xxxxxxxxxxxxxxxxxx; akpm@xxxxxxxxxxxxxxxxxxxx; paulmck@xxxxxxxxxx;
> mchehab+huawei@xxxxxxxxxx; pawan.kumar.gupta@xxxxxxxxxxxxxxx;
> rdunlap@xxxxxxxxxxxxx; oneukum@xxxxxxxx; anshuman.khandual@xxxxxxx;
> jroedel@xxxxxxx; almasrymina@xxxxxxxxxx; rientjes@xxxxxxxxxx;
> willy@xxxxxxxxxxxxx; mhocko@xxxxxxxx; Song Bao Hua (Barry Song)
> <song.bao.hua@xxxxxxxxxxxxx>; duanxiongchun@xxxxxxxxxxxxx;
> linux-doc@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx; linux-mm@xxxxxxxxx;
> linux-fsdevel@xxxxxxxxxxxxxxx
> Subject: Re: [PATCH v6 07/16] x86/mm/64: Disable PMD page mapping of
> vmemmap
>
> On Tue, Nov 24, 2020 at 05:52:50PM +0800, Muchun Song wrote:
> > If we enable the CONFIG_HUGETLB_PAGE_FREE_VMEMMAP, we can just
> > disbale PMD page mapping of vmemmap to simplify the code. In this
> > case, we do not need complex code doing vmemmap page table
> > manipulation. This is a way to simply the first version of this
> > patch series. In the future, we can add some code doing page table
> > manipulation.
>
> IIRC, CONFIG_HUGETLB_PAGE_FREE_VMEMMAP was supposed to be enabled
> by default,
> right?
> And we would control whether we __really__ want to this by a boot option,
> which was disabled by default?
>
> If you go for populating the memmap with basepages by checking
> CONFIG_HUGETLB_PAGE_FREE_VMEMMAP, would not everybody, even the
> ones that
> did not enable this by the boot option be affected?
>

I would believe we could only bypass the pmd mapping of vmemmap while
free_vmemmap is explicitly enabled.
pmd mapping shouldn't be disabled in default. Would a cmdline of enabling
vmemmap_free be used for the first patchset?

> --
> Oscar Salvador
> SUSE L3

Thanks
Barry