From: Vishal Moola (Oracle) Date: Wed, 3 Sep 2025 18:59:19 +0000 (-0700) Subject: powerpc: stop calling page_address() in free_pages() X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=c6686616b4e48de69f790c4b4d61fda9d76c0e25;p=users%2Fjedix%2Flinux-maple.git powerpc: stop calling page_address() in free_pages() free_pages() should be used when we only have a virtual address. We should call __free_pages() directly on our page instead. Link: https://lkml.kernel.org/r/20250903185921.1785167-6-vishal.moola@gmail.com Signed-off-by: Vishal Moola (Oracle) Reviewed-by: Ritesh Harjani (IBM) Acked-by: David Hildenbrand Acked-by: Mike Rapoport (Microsoft) Reviewed-by: Christophe Leroy Cc: Albert Ou Cc: Andy Lutomirski Cc: Catalin Marinas Cc: Dave Hansen Cc: Jens Axboe Cc: Justin Sanders Cc: Madhavan Srinivasan Cc: Matthew Wilcox (Oracle) Cc: Michael Ellerman Cc: "Michael S. Tsirkin" Cc: Palmer Dabbelt Cc: Paul Walmsley Cc: Peter Zijlstra Cc: SeongJae Park Cc: Will Deacon Signed-off-by: Andrew Morton --- diff --git a/arch/powerpc/mm/book3s64/radix_pgtable.c b/arch/powerpc/mm/book3s64/radix_pgtable.c index be523e5fe9c5..73977dbabcf2 100644 --- a/arch/powerpc/mm/book3s64/radix_pgtable.c +++ b/arch/powerpc/mm/book3s64/radix_pgtable.c @@ -780,7 +780,7 @@ static void __meminit free_vmemmap_pages(struct page *page, while (nr_pages--) free_reserved_page(page++); } else - free_pages((unsigned long)page_address(page), order); + __free_pages(page, order); } static void __meminit remove_pte_table(pte_t *pte_start, unsigned long addr,