> -----Original Message-----
> From: liwei (CM)
> Sent: Friday, December 4, 2020 2:45 PM
> To: [email protected]; [email protected]; [email protected]; liwei (CM)
> <[email protected]>
> Cc: fengbaopeng <[email protected]>; [email protected];
> [email protected]; Song Bao Hua (Barry Song) <[email protected]>;
> [email protected]; [email protected]; butao
> <[email protected]>
> Subject: [PATCH] arm64: mm: decrease the section size to reduce the memory
> reserved for the page map
>
> For the memory hole, sparse memory model that define SPARSEMEM_VMEMMAP
> do not free the reserved memory for the page map, decrease the section
> size can reduce the waste of reserved memory.
>
> Signed-off-by: Wei Li <[email protected]>
> Signed-off-by: Baopeng Feng <[email protected]>
> Signed-off-by: Xia Qing <[email protected]>
> ---
Reviewed-by: Barry Song <[email protected]>
When page size is 4K, for each 1GB memory, we need 16MB vmemmap;
For each 128MB memory, we need 2MB vmemmap.
So while we have memory hole like 928MB(1GB-64MB),if SECTION_SIZE_BITS
is 30, we waste 15MB; if SECTION_SIZE_BITS is 27, we waste 1MB only.
> arch/arm64/include/asm/sparsemem.h | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/arch/arm64/include/asm/sparsemem.h
> b/arch/arm64/include/asm/sparsemem.h
> index 1f43fcc79738..8963bd3def28 100644
> --- a/arch/arm64/include/asm/sparsemem.h
> +++ b/arch/arm64/include/asm/sparsemem.h
> @@ -7,7 +7,7 @@
>
> #ifdef CONFIG_SPARSEMEM
> #define MAX_PHYSMEM_BITS CONFIG_ARM64_PA_BITS
> -#define SECTION_SIZE_BITS 30
> +#define SECTION_SIZE_BITS 27
> #endif
>
> #endif
> --
> 2.15.0
Thanks
Barry