From: Sean Christopherson <seanjc@google.com>
To: Marc Zyngier <maz@kernel.org>,
Oliver Upton <oliver.upton@linux.dev>,
Anup Patel <anup@brainfault.org>,
Paul Walmsley <paul.walmsley@sifive.com>,
Palmer Dabbelt <palmer@dabbelt.com>,
Albert Ou <aou@eecs.berkeley.edu>,
Christian Borntraeger <borntraeger@linux.ibm.com>,
Janosch Frank <frankja@linux.ibm.com>,
Claudio Imbrenda <imbrenda@linux.ibm.com>,
Sean Christopherson <seanjc@google.com>,
Paolo Bonzini <pbonzini@redhat.com>
Cc: linux-arm-kernel@lists.infradead.org, kvmarm@lists.linux.dev,
kvm@vger.kernel.org, kvm-riscv@lists.infradead.org,
linux-riscv@lists.infradead.org, linux-kernel@vger.kernel.org
Subject: [PATCH 0/8] KVM: selftests: Binary stats fixes and infra updates
Date: Thu, 19 Dec 2024 17:38:58 -0800 [thread overview]
Message-ID: <20241220013906.3518334-1-seanjc@google.com> (raw)
Fix a handful of bugs in the binary stats infrastructure, expand support
to vCPU-scoped stats, enumerate all KVM stats in selftests, and use the
enumerated stats to assert at compile-time that {vm,vcpu}_get_stat() is
getting a stat that actually exists.
Most of the bugs are benign, and AFAICT, none actually cause problems in
the current code base. The worst of the bugs is lack of validation that
the requested stat actually exists, which is quite annoying if someone
fat fingers a stat name, tries to get a vCPU stat on a VM FD, etc.
FWIW, I'm not entirely convinced enumerating all stats is worth doing in
selftests. It seems nice to have? But I don't know that it'll be worth
the maintenance cost. It was easy enough to implement, so here it is...
Sean Christopherson (8):
KVM: selftests: Fix mostly theoretical leak of VM's binary stats FD
KVM: selftests: Close VM's binary stats FD when releasing VM
KVM: selftests: Assert that __vm_get_stat() actually finds a stat
KVM: selftests: Macrofy vm_get_stat() to auto-generate stat name
string
KVM: selftests: Add struct and helpers to wrap binary stats cache
KVM: selftests: Get VM's binary stats FD when opening VM
KVM: selftests: Add infrastructure for getting vCPU binary stats
KVM: selftests: Add compile-time assertions to guard against stats
typos
Sean Christopherson (8):
KVM: selftests: Fix mostly theoretical leak of VM's binary stats FD
KVM: selftests: Close VM's binary stats FD when releasing VM
KVM: selftests: Assert that __vm_get_stat() actually finds a stat
KVM: selftests: Macrofy vm_get_stat() to auto-generate stat name
string
KVM: selftests: Add struct and helpers to wrap binary stats cache
KVM: selftests: Get VM's binary stats FD when opening VM
KVM: selftests: Add infrastructure for getting vCPU binary stats
KVM: selftests: Add compile-time assertions to guard against stats
typos
.../kvm/include/arm64/kvm_util_arch.h | 12 ++
.../testing/selftests/kvm/include/kvm_util.h | 49 ++++++--
.../selftests/kvm/include/kvm_util_types.h | 6 +
.../kvm/include/riscv/kvm_util_arch.h | 14 +++
.../kvm/include/s390/kvm_util_arch.h | 113 ++++++++++++++++++
.../selftests/kvm/include/x86/kvm_util_arch.h | 52 ++++++++
tools/testing/selftests/kvm/lib/kvm_util.c | 79 ++++++------
.../kvm/x86/dirty_log_page_splitting_test.c | 6 +-
.../selftests/kvm/x86/nx_huge_pages_test.c | 4 +-
.../selftests/kvm/x86/xapic_ipi_test.c | 2 +
10 files changed, 286 insertions(+), 51 deletions(-)
base-commit: dcab55cef6f247a71a75a239d4063018dc83a671
--
2.47.1.613.gc27f4b7a9f-goog
next reply other threads:[~2024-12-20 1:39 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-12-20 1:38 Sean Christopherson [this message]
2024-12-20 1:38 ` [PATCH 1/8] KVM: selftests: Fix mostly theoretical leak of VM's binary stats FD Sean Christopherson
2024-12-20 1:39 ` [PATCH 2/8] KVM: selftests: Close VM's binary stats FD when releasing VM Sean Christopherson
2024-12-20 1:39 ` [PATCH 3/8] KVM: selftests: Assert that __vm_get_stat() actually finds a stat Sean Christopherson
2024-12-20 1:39 ` [PATCH 4/8] KVM: selftests: Macrofy vm_get_stat() to auto-generate stat name string Sean Christopherson
2024-12-20 1:39 ` [PATCH 5/8] KVM: selftests: Add struct and helpers to wrap binary stats cache Sean Christopherson
2024-12-20 1:39 ` [PATCH 6/8] KVM: selftests: Get VM's binary stats FD when opening VM Sean Christopherson
2024-12-20 1:39 ` [PATCH 7/8] KVM: selftests: Add infrastructure for getting vCPU binary stats Sean Christopherson
2024-12-20 1:39 ` [PATCH 8/8] KVM: selftests: Add compile-time assertions to guard against stats typos Sean Christopherson
2025-01-09 19:47 ` [PATCH 0/8] KVM: selftests: Binary stats fixes and infra updates Sean Christopherson
2025-01-10 1:15 ` Sean Christopherson
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20241220013906.3518334-1-seanjc@google.com \
--to=seanjc@google.com \
--cc=anup@brainfault.org \
--cc=aou@eecs.berkeley.edu \
--cc=borntraeger@linux.ibm.com \
--cc=frankja@linux.ibm.com \
--cc=imbrenda@linux.ibm.com \
--cc=kvm-riscv@lists.infradead.org \
--cc=kvm@vger.kernel.org \
--cc=kvmarm@lists.linux.dev \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-riscv@lists.infradead.org \
--cc=maz@kernel.org \
--cc=oliver.upton@linux.dev \
--cc=palmer@dabbelt.com \
--cc=paul.walmsley@sifive.com \
--cc=pbonzini@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox