From: Mike Rapoport Date: Mon, 23 Aug 2021 23:59:26 +0000 (+1000) Subject: mm-page_alloc-always-initialize-memory-map-for-the-holes-fix X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=551ed2e6f5d05691db7ee6a759e5b2d04c6a2938;p=users%2Fjedix%2Flinux-maple.git mm-page_alloc-always-initialize-memory-map-for-the-holes-fix It appears that petalogix-ml605 memory starts at 0x50000, but microblaze's pfn_valid does not reject pfns < ARCH_PFN_OFFSET. Link: https://lkml.kernel.org/r/YQWW3RCE4eWBuMu/@kernel.org Tested-by: Guenter Roeck Cc: Stephen Rothwell Signed-off-by: Andrew Morton Signed-off-by: Stephen Rothwell --- diff --git a/arch/microblaze/include/asm/page.h b/arch/microblaze/include/asm/page.h index ce550978f4fc..4b8b2fa78fc5 100644 --- a/arch/microblaze/include/asm/page.h +++ b/arch/microblaze/include/asm/page.h @@ -112,8 +112,7 @@ extern int page_is_ram(unsigned long pfn); # define page_to_phys(page) (page_to_pfn(page) << PAGE_SHIFT) # define ARCH_PFN_OFFSET (memory_start >> PAGE_SHIFT) -# define pfn_valid(pfn) ((pfn) < (max_mapnr + ARCH_PFN_OFFSET)) - +# define pfn_valid(pfn) ((pfn) >= ARCH_PFN_OFFSET && (pfn) < (max_mapnr + ARCH_PFN_OFFSET)) # endif /* __ASSEMBLY__ */ #define virt_addr_valid(vaddr) (pfn_valid(virt_to_pfn(vaddr)))