Re: [PATCH] arm64: mm: drop redundant remap of FDT first page
From: Sang-Heon Jeon <hidden>
Date: 2026-05-27 12:37:06
On Wed, May 27, 2026 at 3:57 AM Catalin Marinas [off-list ref] wrote:
On Thu, May 14, 2026 at 02:01:01AM +0900, Sang-Heon Jeon wrote:quoted
fixmap_remap_fdt() calls create_mapping_noalloc() to map the first page of the FDT to read its magic and totalsize from the header. If the FDT does not fit in a single page, it calls create_mapping_noalloc() again to map the rest. The second mapping redundantly covers the first page that was just mapped by the first mapping. Start the second mapping at dt_phys_base + PAGE_SIZE so it only covers the pages that have not been mapped yet. No functional change. Signed-off-by: Sang-Heon Jeon <redacted>[...]quoted
diff --git a/arch/arm64/mm/fixmap.c b/arch/arm64/mm/fixmap.c index c5c5425791da..f8aea5572f7c 100644 --- a/arch/arm64/mm/fixmap.c +++ b/arch/arm64/mm/fixmap.c@@ -167,8 +167,9 @@ void *__init fixmap_remap_fdt(phys_addr_t dt_phys, int *size, pgprot_t prot) return NULL; if (offset + *size > PAGE_SIZE) { - create_mapping_noalloc(dt_phys_base, dt_virt_base, - offset + *size, prot); + create_mapping_noalloc(dt_phys_base + PAGE_SIZE, + dt_virt_base + PAGE_SIZE, + offset + *size - PAGE_SIZE, prot); }Is it actually worth it? It's not that we allocate memory here or take a noticeable time to reach the first pte. I find the current easier to read.
Fair point. This is just a minor cleanup on my side. If you feel the original reads better, happy to drop this patch. Thanks for reviewing, Catalin. Best Regards Sang-Heon Jeon
-- Catalin