Re: [PATCH 7/8] s390/mm: use free_reserved_page() in vmem_free_pages()

From: Heiko Carstens

Date: Mon May 11 2026 - 10:28:19 EST


On Mon, May 11, 2026 at 04:05:35PM +0200, David Hildenbrand (Arm) wrote:
> We never select CONFIG_HAVE_BOOTMEM_INFO_NODE on s390. Therefore,
> free_bootmem_page() nowadays always translates to free_reserved_page().
>
> Let's use free_reserved_page() to replace the free_bootmem_page() loop.
> We can stop including bootmem_info.h.
>
> Likely, vmemmap freeing code could be factored out into the core in the
> future.
>
> Signed-off-by: David Hildenbrand (Arm) <david@xxxxxxxxxx>
> ---
> arch/s390/mm/vmem.c | 3 +--
> 1 file changed, 1 insertion(+), 2 deletions(-)
>
> diff --git a/arch/s390/mm/vmem.c b/arch/s390/mm/vmem.c
> index eeadff45e0e1..d8b2a60e0c33 100644
> --- a/arch/s390/mm/vmem.c
> +++ b/arch/s390/mm/vmem.c
> @@ -4,7 +4,6 @@
> */
>
> #include <linux/memory_hotplug.h>
> -#include <linux/bootmem_info.h>
> #include <linux/cpufeature.h>
> #include <linux/memblock.h>
> #include <linux/pfn.h>
> @@ -51,7 +50,7 @@ static void vmem_free_pages(unsigned long addr, int order, struct vmem_altmap *a
> if (PageReserved(page)) {
> /* allocated from memblock */
> while (nr_pages--)
> - free_bootmem_page(page++);
> + free_reserved_page(page++);

What about the implicit call of kmemleak_free_part_phys() which gets
removed with this?