KVM: selftests: Verify that KVM returns the configured APIC cycle length
authorSean Christopherson <seanjc@google.com>
Fri, 22 May 2026 17:35:26 +0000 (10:35 -0700)
committerPaolo Bonzini <pbonzini@redhat.com>
Sat, 23 May 2026 08:07:40 +0000 (10:07 +0200)
Add checks in the APIC bus clock test to verify that querying
KVM_CAP_X86_APIC_BUS_CYCLES_NS on the VM after changing the frequency
returns the VM's actual APIC cycle length, not KVM's default.  For
giggles, verify that KVM still returns its default frequency for the
system-scoped check.

Signed-off-by: Sean Christopherson <seanjc@google.com>
Message-ID: <20260522173526.3539407-3-seanjc@google.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
tools/testing/selftests/kvm/x86/apic_bus_clock_test.c

index 404f002..0c84c27 100644 (file)
@@ -137,6 +137,10 @@ static void run_apic_bus_clock_test(u64 apic_hz, u64 delay_ms,
        vm_enable_cap(vm, KVM_CAP_X86_APIC_BUS_CYCLES_NS,
                      NSEC_PER_SEC / apic_hz);
 
+       TEST_ASSERT_EQ(kvm_check_cap(KVM_CAP_X86_APIC_BUS_CYCLES_NS), 1);
+       TEST_ASSERT_EQ(vm_check_cap(vm, KVM_CAP_X86_APIC_BUS_CYCLES_NS),
+                      NSEC_PER_SEC / apic_hz);
+
        vcpu = vm_vcpu_add(vm, 0, apic_guest_code);
        vcpu_args_set(vcpu, 2, apic_hz, delay_ms);