There are two loops in prepare_vm(), which have different conditions.
'slot' is treated as meory slot index in the first loop, but index of
the host virtual address array in the second loop. It makes it a bit
hard to understand the code.

Change the usage of 'slot' in the second loop, to treat it as the
memory slot index either.

No functional change intended.

Signed-off-by: Gavin Shan <gs...@redhat.com>
---
 tools/testing/selftests/kvm/memslot_perf_test.c | 11 +++++------
 1 file changed, 5 insertions(+), 6 deletions(-)

diff --git a/tools/testing/selftests/kvm/memslot_perf_test.c 
b/tools/testing/selftests/kvm/memslot_perf_test.c
index 231cc8449c2e..dcb492b3f27b 100644
--- a/tools/testing/selftests/kvm/memslot_perf_test.c
+++ b/tools/testing/selftests/kvm/memslot_perf_test.c
@@ -297,21 +297,20 @@ static bool prepare_vm(struct vm_data *data, int nslots, 
uint64_t *maxslots,
        }
        *slot_runtime = timespec_elapsed(tstart);
 
-       for (slot = 0, guest_addr = MEM_GPA; slot < data->nslots; slot++) {
+       for (slot = 1, guest_addr = MEM_GPA; slot <= data->nslots; slot++) {
                uint64_t npages;
                uint64_t gpa;
 
                npages = data->pages_per_slot;
-               if (slot == data->nslots - 1)
+               if (slot == data->nslots)
                        npages += rempages;
 
-               gpa = vm_phy_pages_alloc(data->vm, npages, guest_addr,
-                                        slot + 1);
+               gpa = vm_phy_pages_alloc(data->vm, npages, guest_addr, slot);
                TEST_ASSERT(gpa == guest_addr,
                            "vm_phy_pages_alloc() failed\n");
 
-               data->hva_slots[slot] = addr_gpa2hva(data->vm, guest_addr);
-               memset(data->hva_slots[slot], 0, npages * 4096);
+               data->hva_slots[slot - 1] = addr_gpa2hva(data->vm, guest_addr);
+               memset(data->hva_slots[slot - 1], 0, npages * 4096);
 
                guest_addr += npages * 4096;
        }
-- 
2.23.0

_______________________________________________
kvmarm mailing list
kvmarm@lists.cs.columbia.edu
https://lists.cs.columbia.edu/mailman/listinfo/kvmarm

Reply via email to