[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAMZfGtUPbGRO6fNgRkkGWgUDGgRY3-ijsV6ur=VfnDc9baV2Cg@mail.gmail.com>
Date: Wed, 16 Jun 2021 11:04:37 +0800
From: Muchun Song <songmuchun@...edance.com>
To: Joao Martins <joao.m.martins@...cle.com>
Cc: Xiongchun duan <duanxiongchun@...edance.com>,
fam.zheng@...edance.com, linux-doc@...r.kernel.org,
LKML <linux-kernel@...r.kernel.org>,
Linux Memory Management List <linux-mm@...ck.org>,
Mike Kravetz <mike.kravetz@...cle.com>,
Chen Huang <chenhuang5@...wei.com>,
Andrew Morton <akpm@...ux-foundation.org>,
Oscar Salvador <osalvador@...e.de>,
Michal Hocko <mhocko@...e.com>,
"Song Bao Hua (Barry Song)" <song.bao.hua@...ilicon.com>,
David Hildenbrand <david@...hat.com>,
Jonathan Corbet <corbet@....net>,
"Bodeddula, Balasubramaniam" <bodeddub@...zon.com>
Subject: Re: [External] Re: [PATCH v2 3/3] mm: hugetlb: introduce CONFIG_HUGETLB_PAGE_FREE_VMEMMAP_DEFAULT_ON
On Wed, Jun 16, 2021 at 7:01 AM Joao Martins <joao.m.martins@...cle.com> wrote:
>
>
>
> On 6/12/21 10:45 AM, Muchun Song wrote:
> > When using HUGETLB_PAGE_FREE_VMEMMAP, the freeing unused vmemmap pages
> > associated with each HugeTLB page is default off. Now the vmemmap is PMD
> > mapped. So there is no side effect when this feature is enabled with no
> > HugeTLB pages in the system. Someone may want to enable this feature in
> > the compiler time instead of using boot command line. So add a config to
> > make it default on when someone do not want to enable it via command line.
> >
> > Signed-off-by: Muchun Song <songmuchun@...edance.com>
> > ---
> > Documentation/admin-guide/kernel-parameters.txt | 3 +++
> > fs/Kconfig | 10 ++++++++++
> > mm/hugetlb_vmemmap.c | 6 ++++--
> > 3 files changed, 17 insertions(+), 2 deletions(-)
> >
> > diff --git a/Documentation/admin-guide/kernel-parameters.txt b/Documentation/admin-guide/kernel-parameters.txt
> > index a01aadafee38..8eee439d943c 100644
> > --- a/Documentation/admin-guide/kernel-parameters.txt
> > +++ b/Documentation/admin-guide/kernel-parameters.txt
> > @@ -1604,6 +1604,9 @@
> > on: enable the feature
> > off: disable the feature
> >
> > + Built with CONFIG_HUGETLB_PAGE_FREE_VMEMMAP_DEFAULT_ON=y,
> > + the default is on.
> > +
> > This is not compatible with memory_hotplug.memmap_on_memory.
> > If both parameters are enabled, hugetlb_free_vmemmap takes
> > precedence over memory_hotplug.memmap_on_memory.
> > diff --git a/fs/Kconfig b/fs/Kconfig
> > index f40b5b98f7ba..e78bc5daf7b0 100644
> > --- a/fs/Kconfig
> > +++ b/fs/Kconfig
> > @@ -245,6 +245,16 @@ config HUGETLB_PAGE_FREE_VMEMMAP
> > depends on X86_64
> > depends on SPARSEMEM_VMEMMAP
> >
> Now that you have no longer have the directmap in basepages limitation, I suppose you no
> longer need explicit arch support for HUGETLB_PAGE_FREE_VMEMMAP right?
>
> If so, I suppose you might be able to remove the 'depends on X86_64' part and "gain"
> ARM64, PPC, etc support.
You are right. This is the next step I want to do. Also, include IA64 and RISCV.
>
> Joao
Powered by blists - more mailing lists