[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20240109141121.1619463-1-vkuznets@redhat.com>
Date: Tue, 9 Jan 2024 15:11:16 +0100
From: Vitaly Kuznetsov <vkuznets@...hat.com>
To: kvm@...r.kernel.org,
Paolo Bonzini <pbonzini@...hat.com>,
Sean Christopherson <seanjc@...gle.com>
Cc: Oliver Upton <oupton@...gle.com>,
linux-kernel@...r.kernel.org
Subject: [PATCH 0/5] KVM: selftests: Fix clocksource requirements in tests
It was discovered that 'hyperv_clock' fails miserably when the system is
using an unsupported (by KVM) clocksource, e.g. 'kvm-clock'. The root cause
of the failure is that 'hyperv_clock' doesn't actually check which clocksource
is currently in use. Other tests (kvm_clock_test, vmx_nested_tsc_scaling_test)
have the required check but each test does it on its own.
Generalize clocksource checking infrastructure, make all three clocksource
dependent tests run with 'tsc' and 'hyperv_clocksource_tsc_page', and skip
gracefully when run in an unsupported configuration.
The last patch of the series is a loosely related minor nitpick for KVM
code itself.
Vitaly Kuznetsov (5):
KVM: selftests: Generalize check_clocksource() from kvm_clock_test
KVM: selftests: Use generic sys_clocksource_is_tsc() in
vmx_nested_tsc_scaling_test
KVM: selftests: Run clocksource dependent tests with
hyperv_clocksource_tsc_page too
KVM: selftests: Make hyperv_clock require TSC based system clocksource
KVM: x86: Make gtod_is_based_on_tsc() return 'bool'
arch/x86/kvm/x86.c | 2 +-
.../testing/selftests/kvm/include/test_util.h | 2 +
.../selftests/kvm/include/x86_64/processor.h | 2 +
tools/testing/selftests/kvm/lib/test_util.c | 25 ++++++++++++
.../selftests/kvm/lib/x86_64/processor.c | 15 ++++++++
.../selftests/kvm/x86_64/hyperv_clock.c | 1 +
.../selftests/kvm/x86_64/kvm_clock_test.c | 38 +------------------
.../kvm/x86_64/vmx_nested_tsc_scaling_test.c | 19 +---------
8 files changed, 48 insertions(+), 56 deletions(-)
base-commit: 7f26fea9bc085290e3731501f4f8fc5b82b9d615
--
2.43.0
Powered by blists - more mailing lists