[PATCH] powerpc/mm/altmap: Fix altmap boundary check
David Hildenbrand
david at redhat.com
Tue Jul 25 04:22:47 AEST 2023
On 24.07.23 20:13, Aneesh Kumar K.V wrote:
> altmap->free includes the entire free space from which altmap blocks
> can be allocated. So when checking whether the kernel is doing altmap
> block free, compute the boundary correctly.
>
> Cc: David Hildenbrand <david at redhat.com>
> Cc: Dan Williams <dan.j.williams at intel.com>
> Fixes: 9ef34630a461 ("powerpc/mm: Fallback to RAM if the altmap is unusable")
> Signed-off-by: Aneesh Kumar K.V <aneesh.kumar at linux.ibm.com>
> ---
> arch/powerpc/mm/init_64.c | 3 +--
> 1 file changed, 1 insertion(+), 2 deletions(-)
>
> diff --git a/arch/powerpc/mm/init_64.c b/arch/powerpc/mm/init_64.c
> index fe1b83020e0d..0ec5b45b1e86 100644
> --- a/arch/powerpc/mm/init_64.c
> +++ b/arch/powerpc/mm/init_64.c
> @@ -314,8 +314,7 @@ void __ref vmemmap_free(unsigned long start, unsigned long end,
> start = ALIGN_DOWN(start, page_size);
> if (altmap) {
> alt_start = altmap->base_pfn;
> - alt_end = altmap->base_pfn + altmap->reserve +
> - altmap->free + altmap->alloc + altmap->align;
> + alt_end = altmap->base_pfn + altmap->reserve + altmap->free;
Right, align is treated like allocated and align+alloc cannot exceed free.
Reviewed-by: David Hildenbrand <david at redhat.com>
--
Cheers,
David / dhildenb
More information about the Linuxppc-dev
mailing list