答复: [PATCH] arm64: mm: free unused memmap for sparse memory model that define VMEMMAP

liwei (CM) liwei213 at huawei.com
Wed Jul 8 03:51:54 EDT 2020


Hi, baohua

Thank you for your attention.

In my understanding of the MEMORY_HOTPLUG this patch has no effect on it. The reason is that in sparse_add_one_section() the memory that memmap needs from Slab if kernel start completed,this memory has nothing to do with memblock alloc/ free memory in the process of kernel start.

You may have a look vmemmap_alloc_block () this function.

If I don't understand right welcome pointed out in a timely manner.

Thanks!


-----邮件原件-----
发件人: Song Bao Hua (Barry Song) 
发送时间: 2020年7月8日 15:19
收件人: liwei (CM) <liwei213 at huawei.com>; catalin.marinas at arm.com; will at kernel.org
抄送: fengbaopeng <fengbaopeng2 at hisilicon.com>; nsaenzjulienne at suse.de; steve.capper at arm.com; rppt at linux.ibm.com; linux-arm-kernel at lists.infradead.org; linux-kernel at vger.kernel.org; sujunfei <sujunfei2 at hisilicon.com>
主题: RE: [PATCH] arm64: mm: free unused memmap for sparse memory model that define VMEMMAP



> -----Original Message-----
> From: liwei (CM)
> Sent: Wednesday, July 8, 2020 1:56 PM
> To: catalin.marinas at arm.com; will at kernel.org
> Cc: liwei (CM) <liwei213 at huawei.com>; fengbaopeng 
> <fengbaopeng2 at hisilicon.com>; nsaenzjulienne at suse.de; 
> steve.capper at arm.com; rppt at linux.ibm.com; Song Bao Hua (Barry Song) 
> <song.bao.hua at hisilicon.com>; linux-arm-kernel at lists.infradead.org;
> linux-kernel at vger.kernel.org; sujunfei <sujunfei2 at hisilicon.com>
> Subject: [PATCH] arm64: mm: free unused memmap for sparse memory model 
> that define VMEMMAP
> 
> For the memory hole, sparse memory model that define SPARSEMEM_VMEMMAP 
> do not free the reserved memory for the page map, this patch do it.

Hello Wei,
Just curious if this patch breaks MEMORY_HOTPLUG?

> 
> Signed-off-by: Wei Li <liwei213 at huawei.com>
> Signed-off-by: Chen Feng <puck.chen at hisilicon.com>
> Signed-off-by: Xia Qing <saberlily.xia at hisilicon.com>
> ---
>  arch/arm64/mm/init.c | 81
> +++++++++++++++++++++++++++++++++++++++++++++-------
>  1 file changed, 71 insertions(+), 10 deletions(-)
> 
> diff --git a/arch/arm64/mm/init.c b/arch/arm64/mm/init.c index 
> 1e93cfc7c47a..d1b56b47d5ba 100644
> --- a/arch/arm64/mm/init.c
> +++ b/arch/arm64/mm/init.c
> @@ -441,7 +441,48 @@ void __init bootmem_init(void)
>  	memblock_dump_all();
>  }
> 

Thanks
Barry



More information about the linux-arm-kernel mailing list