Re: [PATCH] KVM: arm64: Drop sort_memblock_regions()
From: Anshuman Khandual
Date: Wed Mar 12 2025 - 22:53:52 EST
On 3/11/25 10:07, Gavin Shan wrote:
> Drop sort_memblock_regions() and avoid sorting the copied memory
> regions to be ascending order on their base addresses, because the
> source memory regions should have been sorted correctly when they
> are added by memblock_add() or its variants.
>
> This is generally reverting commit a14307f5310c ("KVM: arm64: Sort
> the hypervisor memblocks"). No functional changes intended.
Just wondering what prompted this change ?
>
> Signed-off-by: Gavin Shan <gshan@xxxxxxxxxx>
> ---
> arch/arm64/kvm/pkvm.c | 19 -------------------
> 1 file changed, 19 deletions(-)
>
> diff --git a/arch/arm64/kvm/pkvm.c b/arch/arm64/kvm/pkvm.c
> index 930b677eb9b0..d9c9174f89a1 100644
> --- a/arch/arm64/kvm/pkvm.c
> +++ b/arch/arm64/kvm/pkvm.c
> @@ -10,7 +10,6 @@
> #include <asm/kvm_mmu.h>
> #include <linux/memblock.h>
> #include <linux/mutex.h>
> -#include <linux/sort.h>
>
> #include <asm/kvm_pkvm.h>
>
> @@ -24,23 +23,6 @@ static unsigned int *hyp_memblock_nr_ptr = &kvm_nvhe_sym(hyp_memblock_nr);
> phys_addr_t hyp_mem_base;
> phys_addr_t hyp_mem_size;
>
> -static int cmp_hyp_memblock(const void *p1, const void *p2)
> -{
> - const struct memblock_region *r1 = p1;
> - const struct memblock_region *r2 = p2;
> -
> - return r1->base < r2->base ? -1 : (r1->base > r2->base);
> -}
> -
> -static void __init sort_memblock_regions(void)
> -{
> - sort(hyp_memory,
> - *hyp_memblock_nr_ptr,
> - sizeof(struct memblock_region),
> - cmp_hyp_memblock,
> - NULL);
> -}
> -
> static int __init register_memblock_regions(void)
> {
> struct memblock_region *reg;
> @@ -52,7 +34,6 @@ static int __init register_memblock_regions(void)
> hyp_memory[*hyp_memblock_nr_ptr] = *reg;
> (*hyp_memblock_nr_ptr)++;
> }
> - sort_memblock_regions();
>
> return 0;
> }