[PATCH v2 0/2] KVM: Coalesced IO cleanup and test

Sean Christopherson seanjc at google.com
Wed Aug 28 11:14:44 PDT 2024


Add a regression test for the bug fixed by commit 92f6d4130497 ("KVM:
Fix coalesced_mmio_has_room() to avoid premature userspace exit"), and
then do additional clean up on the offending KVM code.  I wrote the test
mainly so that I was confident I actually understood Ilias' fix.

This applies on the aforementioned commit, which is sitting in
kvm-x86/generic.

Fully tested on x86 and arm64, compile tested on RISC-V.

Ilias, I deliberately didn't include your Reviewed-by for the selftest, just
in case I botched something during the (minor, in theory) rework.

v2:
 - Collect a review. [Ilias]
 - Fix a typo in patch 2's changelog. [Ilias]
 - Rework the selftest to containerize the coalesced I/O ring and its state,
   to hopefully make it easier to extend the test to validate using a ring
   other than KVM's built-in default. [Ilias]

Sean Christopherson (2):
  KVM: selftests: Add a test for coalesced MMIO (and PIO on x86)
  KVM: Clean up coalesced MMIO ring full check

 tools/testing/selftests/kvm/Makefile          |   3 +
 .../testing/selftests/kvm/coalesced_io_test.c | 236 ++++++++++++++++++
 .../testing/selftests/kvm/include/kvm_util.h  |  26 ++
 virt/kvm/coalesced_mmio.c                     |  29 +--
 4 files changed, 273 insertions(+), 21 deletions(-)
 create mode 100644 tools/testing/selftests/kvm/coalesced_io_test.c


base-commit: 728d17c2cb8cc5f9ac899173d0e9a67fb8887622
-- 
2.46.0.295.g3b9ea8a38a-goog




More information about the linux-riscv mailing list