KVM: x86/mmu: Avoid pointer arithmetic when iterating over SPTEs
authorSean Christopherson <seanjc@google.com>
Sat, 29 Jul 2023 00:47:14 +0000 (17:47 -0700)
committerPaolo Bonzini <pbonzini@redhat.com>
Thu, 31 Aug 2023 17:48:42 +0000 (13:48 -0400)
Replace the pointer arithmetic used to iterate over SPTEs in
is_empty_shadow_page() with more standard interger-based iteration.

No functional change intended.

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Link: https://lore.kernel.org/r/20230729004722.1056172-5-seanjc@google.com
Signed-off-by: Sean Christopherson <seanjc@google.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
arch/x86/kvm/mmu/mmu.c

index 8e0b7ad..3749ccd 100644 (file)
@@ -1692,15 +1692,15 @@ bool kvm_test_age_gfn(struct kvm *kvm, struct kvm_gfn_range *range)
 #ifdef MMU_DEBUG
 static int is_empty_shadow_page(u64 *spt)
 {
-       u64 *pos;
-       u64 *end;
+       int i;
 
-       for (pos = spt, end = pos + SPTE_ENT_PER_PAGE; pos != end; pos++)
-               if (is_shadow_present_pte(*pos)) {
+       for (i = 0; i < SPTE_ENT_PER_PAGE; i++) {
+               if (is_shadow_present_pte(spt[i])) {
                        printk(KERN_ERR "%s: %p %llx\n", __func__,
-                              pos, *pos);
+                              &spt[i], spt[i]);
                        return 0;
                }
+       }
        return 1;
 }
 #endif