Commit d324a733 authored by Thomas Huth's avatar Thomas Huth Committed by Paolo Bonzini

KVM: selftests: Use TAP interface in the kvm_binary_stats_test

The kvm_binary_stats_test test currently does not have any output (unless
one of the TEST_ASSERT statement fails), so it's hard to say for a user
how far it did proceed already. Thus let's make this a little bit more
user-friendly and include some TAP output via the kselftest.h interface.
Signed-off-by: default avatarThomas Huth <thuth@redhat.com>
Reviewed-by: default avatarAndrew Jones <andrew.jones@linux.dev>
Message-Id: <20221004093131.40392-2-thuth@redhat.com>
Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
parent 641e6808
...@@ -19,6 +19,7 @@ ...@@ -19,6 +19,7 @@
#include "kvm_util.h" #include "kvm_util.h"
#include "asm/kvm.h" #include "asm/kvm.h"
#include "linux/kvm.h" #include "linux/kvm.h"
#include "kselftest.h"
static void stats_test(int stats_fd) static void stats_test(int stats_fd)
{ {
...@@ -51,7 +52,7 @@ static void stats_test(int stats_fd) ...@@ -51,7 +52,7 @@ static void stats_test(int stats_fd)
/* Sanity check for other fields in header */ /* Sanity check for other fields in header */
if (header.num_desc == 0) { if (header.num_desc == 0) {
printf("No KVM stats defined!"); ksft_print_msg("No KVM stats defined!\n");
return; return;
} }
/* /*
...@@ -224,9 +225,13 @@ int main(int argc, char *argv[]) ...@@ -224,9 +225,13 @@ int main(int argc, char *argv[])
max_vcpu = DEFAULT_NUM_VCPU; max_vcpu = DEFAULT_NUM_VCPU;
} }
ksft_print_header();
/* Check the extension for binary stats */ /* Check the extension for binary stats */
TEST_REQUIRE(kvm_has_cap(KVM_CAP_BINARY_STATS_FD)); TEST_REQUIRE(kvm_has_cap(KVM_CAP_BINARY_STATS_FD));
ksft_set_plan(max_vm);
/* Create VMs and VCPUs */ /* Create VMs and VCPUs */
vms = malloc(sizeof(vms[0]) * max_vm); vms = malloc(sizeof(vms[0]) * max_vm);
TEST_ASSERT(vms, "Allocate memory for storing VM pointers"); TEST_ASSERT(vms, "Allocate memory for storing VM pointers");
...@@ -245,10 +250,12 @@ int main(int argc, char *argv[]) ...@@ -245,10 +250,12 @@ int main(int argc, char *argv[])
vm_stats_test(vms[i]); vm_stats_test(vms[i]);
for (j = 0; j < max_vcpu; ++j) for (j = 0; j < max_vcpu; ++j)
vcpu_stats_test(vcpus[i * max_vcpu + j]); vcpu_stats_test(vcpus[i * max_vcpu + j]);
ksft_test_result_pass("vm%i\n", i);
} }
for (i = 0; i < max_vm; ++i) for (i = 0; i < max_vm; ++i)
kvm_vm_free(vms[i]); kvm_vm_free(vms[i]);
free(vms); free(vms);
return 0;
ksft_finished(); /* Print results and exit() accordingly */
} }
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment