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) <[email protected]>; [email protected]; [email protected]
抄送: fengbaopeng <[email protected]>; [email protected]; 
[email protected]; [email protected]; [email protected]; 
[email protected]; sujunfei <[email protected]>
主题: 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: [email protected]; [email protected]
> Cc: liwei (CM) <[email protected]>; fengbaopeng 
> <[email protected]>; [email protected]; 
> [email protected]; [email protected]; Song Bao Hua (Barry Song) 
> <[email protected]>; [email protected];
> [email protected]; sujunfei <[email protected]>
> 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 <[email protected]>
> Signed-off-by: Chen Feng <[email protected]>
> Signed-off-by: Xia Qing <[email protected]>
> ---
>  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