[PATCH v2 5/7] powerpc: Stop calling page_address() in free_pages()
Ritesh Harjani (IBM)
ritesh.list at gmail.com
Mon Sep 1 13:47:44 AEST 2025
Hi Vishal,
"Vishal Moola (Oracle)" <vishal.moola at gmail.com> writes:
> free_pages() should be used when we only have a virtual address. We
> should call __free_pages() directly on our page instead.
>
> Signed-off-by: Vishal Moola (Oracle) <vishal.moola at gmail.com>
> ---
> arch/powerpc/mm/book3s64/radix_pgtable.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
Please also cc the respective subsystem mailing list if the changes span
in their area. In this case that would be linuxppc-dev at lists.ozlabs.org
( I did it this time )
Thanks for doing the cleanup. Yes, it makes no sense to do page_address()
here and then free_pages() doing virt_to_page() internally..
The change looks good to me. Please feel free to add:
Reviewed-by: Ritesh Harjani (IBM) <ritesh.list at gmail.com>
>
> 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,
> --
> 2.51.0
More information about the Linuxppc-dev
mailing list