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. 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 | 202 ++++++++++++++++++ .../testing/selftests/kvm/include/kvm_util.h | 26 +++ virt/kvm/coalesced_mmio.c | 29 +-- 4 files changed, 239 insertions(+), 21 deletions(-) create mode 100644 tools/testing/selftests/kvm/coalesced_io_test.c base-commit: 728d17c2cb8cc5f9ac899173d0e9a67fb8887622 -- 2.46.0.295.g3b9ea8a38a-goog