答复: [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