[PATCH v2 3/9] KVM: selftests: Assert that __vm_get_stat() actually finds a stat

From: Sean Christopherson
Date: Fri Jan 10 2025 - 19:51:52 EST


Fail the test if it attempts to read a stat that doesn't exist, e.g. due
to a typo (hooray, strings), or because the test tried to get a stat for
the wrong scope. As is, there's no indiciation of failure and @data is
left untouched, e.g. holds '0' or random stack data in most cases.

Fixes: 8448ec5993be ("KVM: selftests: Add NX huge pages test")
Signed-off-by: Sean Christopherson <seanjc@xxxxxxxxxx>
---
tools/testing/selftests/kvm/lib/kvm_util.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/tools/testing/selftests/kvm/lib/kvm_util.c b/tools/testing/selftests/kvm/lib/kvm_util.c
index 9138801ecb60..21b5a6261106 100644
--- a/tools/testing/selftests/kvm/lib/kvm_util.c
+++ b/tools/testing/selftests/kvm/lib/kvm_util.c
@@ -2238,9 +2238,10 @@ void __vm_get_stat(struct kvm_vm *vm, const char *stat_name, uint64_t *data,

read_stat_data(vm->stats_fd, &vm->stats_header, desc,
data, max_elements);
-
- break;
+ return;
}
+
+ TEST_FAIL("Unabled to find stat '%s'", stat_name);
}

__weak void kvm_arch_vm_post_create(struct kvm_vm *vm)
--
2.47.1.613.gc27f4b7a9f-goog