Re: [PATCH v6 5/5] mm/page_alloc: reuse tail struct pages for compound devmaps

2022-02-24 Thread Joao Martins
On 2/24/22 15:41, Muchun Song wrote: > On Thu, Feb 24, 2022 at 3:48 AM Joao Martins > wrote: >> >> Currently memmap_init_zone_device() ends up initializing 32768 pages >> when it only needs to initialize 128 given tail page reuse. That >> number is worse with 1GB compound pages, 262144 instead of

Re: [PATCH v6 5/5] mm/page_alloc: reuse tail struct pages for compound devmaps

2022-02-24 Thread Muchun Song
On Thu, Feb 24, 2022 at 3:48 AM Joao Martins wrote: > > Currently memmap_init_zone_device() ends up initializing 32768 pages > when it only needs to initialize 128 given tail page reuse. That > number is worse with 1GB compound pages, 262144 instead of 128. Update > memmap_init_zone_device() to sk

Re: [PATCH v6 4/5] mm/sparse-vmemmap: improve memory savings for compound devmaps

2022-02-24 Thread Muchun Song
On Thu, Feb 24, 2022 at 7:47 PM Joao Martins wrote: > > On 2/24/22 05:54, Muchun Song wrote: > > On Thu, Feb 24, 2022 at 3:48 AM Joao Martins > > wrote: > >> diff --git a/include/linux/mm.h b/include/linux/mm.h > >> index 5f549cf6a4e8..b0798b9c6a6a 100644 > >> --- a/include/linux/mm.h > >> +++ b

Re: [PATCH v6 5/5] mm/page_alloc: reuse tail struct pages for compound devmaps

2022-02-24 Thread Joao Martins
On 2/24/22 05:57, Muchun Song wrote: > On Thu, Feb 24, 2022 at 3:48 AM Joao Martins > wrote: >> --- a/mm/page_alloc.c >> +++ b/mm/page_alloc.c >> @@ -6653,6 +6653,20 @@ static void __ref __init_zone_device_page(struct page >> *page, unsigned long pfn, >> } >> } >> >> +/* >> + * With com

Re: [PATCH v6 4/5] mm/sparse-vmemmap: improve memory savings for compound devmaps

2022-02-24 Thread Joao Martins
On 2/24/22 05:54, Muchun Song wrote: > On Thu, Feb 24, 2022 at 3:48 AM Joao Martins > wrote: >> diff --git a/include/linux/mm.h b/include/linux/mm.h >> index 5f549cf6a4e8..b0798b9c6a6a 100644 >> --- a/include/linux/mm.h >> +++ b/include/linux/mm.h >> @@ -3118,7 +3118,7 @@ p4d_t *vmemmap_p4d_popul

Re: [PATCH v6 2/5] mm/sparse-vmemmap: refactor core of vmemmap_populate_basepages() to helper

2022-02-24 Thread Joao Martins
On 2/24/22 03:10, Muchun Song wrote: > On Thu, Feb 24, 2022 at 3:48 AM Joao Martins > wrote: >> >> In preparation for describing a memmap with compound pages, move the >> actual pte population logic into a separate function >> vmemmap_populate_address() and have vmemmap_populate_basepages() walk

Re: [PATCH v6 1/5] mm/sparse-vmemmap: add a pgmap argument to section activation

2022-02-24 Thread Joao Martins
On 2/24/22 03:02, Muchun Song wrote: > On Thu, Feb 24, 2022 at 3:48 AM Joao Martins > wrote: >> >> In support of using compound pages for devmap mappings, plumb the pgmap >> down to the vmemmap_populate implementation. Note that while altmap is >> retrievable from pgmap the memory hotplug code