On Sun, Jan 11, 2026 at 10:20:51AM +0200, Mike Rapoport wrote:
Hi Mike,
...
> +void __init arch_zone_limits_init(unsigned long *max_zone_pfns)
> +{
> + max_zone_pfns[ZONE_DMA] = virt_to_pfn(MAX_DMA_ADDRESS);
> + max_zone_pfns[ZONE_NORMAL] = max_low_pfn;
> +}
> +
> /*
> * paging_init() sets up the page tables
> */
> @@ -97,8 +103,7 @@ void __init paging_init(void)
> sparse_init();
> zone_dma_limit = DMA_BIT_MASK(31);
> memset(max_zone_pfns, 0, sizeof(max_zone_pfns));
> - max_zone_pfns[ZONE_DMA] = virt_to_pfn(MAX_DMA_ADDRESS);
> - max_zone_pfns[ZONE_NORMAL] = max_low_pfn;
> + arch_zone_limits_init(max_zone_pfns);
You move initialization of max_zone_pfns[] to a function, name the
function arch_zone_limits_init(), but leave the initializatio of
max_zone_pfns[] to zeroes outside. Should not it be brought along?
> free_area_init(max_zone_pfns);
> }
Thanks!