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) <liwei...@huawei.com>; catalin.mari...@arm.com; w...@kernel.org
抄送: fengbaopeng <fengbaope...@hisilicon.com>; nsaenzjulie...@suse.de; 
steve.cap...@arm.com; r...@linux.ibm.com; linux-arm-ker...@lists.infradead.org; 
linux-kernel@vger.kernel.org; sujunfei <sujunf...@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.mari...@arm.com; w...@kernel.org
> Cc: liwei (CM) <liwei...@huawei.com>; fengbaopeng 
> <fengbaope...@hisilicon.com>; nsaenzjulie...@suse.de; 
> steve.cap...@arm.com; r...@linux.ibm.com; Song Bao Hua (Barry Song) 
> <song.bao....@hisilicon.com>; linux-arm-ker...@lists.infradead.org;
> linux-kernel@vger.kernel.org; sujunfei <sujunf...@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 <liwei...@huawei.com>
> Signed-off-by: Chen Feng <puck.c...@hisilicon.com>
> Signed-off-by: Xia Qing <saberlily....@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

Reply via email to