aboutsummaryrefslogtreecommitdiffstats
path: root/tools/testing/selftests/kvm/lib
diff options
context:
space:
mode:
authorSean Christopherson <seanjc@google.com>2022-02-15 12:06:02 -0800
committerPaolo Bonzini <pbonzini@redhat.com>2022-06-11 10:18:58 -0400
commit71ab5a6fea49875290e6ca035ff1d3e3ef3813f7 (patch)
tree6554f45293fab9abe36039a61ff19a03579aacaf /tools/testing/selftests/kvm/lib
parentKVM: selftests: Add vcpu_get() to retrieve and assert on vCPU existence (diff)
downloadlinux-dev-71ab5a6fea49875290e6ca035ff1d3e3ef3813f7.tar.xz
linux-dev-71ab5a6fea49875290e6ca035ff1d3e3ef3813f7.zip
KVM: selftests: Make vm_ioctl() a wrapper to pretty print ioctl name
Make vm_ioctl() a macro wrapper and print the _name_ of the ioctl on failure instead of the number. Deliberately do not use __stringify(), as that will expand the ioctl all the way down to its numerical sequence. Again the intent is to print the name of the macro. Signed-off-by: Sean Christopherson <seanjc@google.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'tools/testing/selftests/kvm/lib')
-rw-r--r--tools/testing/selftests/kvm/lib/kvm_util.c26
1 files changed, 6 insertions, 20 deletions
diff --git a/tools/testing/selftests/kvm/lib/kvm_util.c b/tools/testing/selftests/kvm/lib/kvm_util.c
index 940decfaa633..7eedd9ff20fa 100644
--- a/tools/testing/selftests/kvm/lib/kvm_util.c
+++ b/tools/testing/selftests/kvm/lib/kvm_util.c
@@ -1690,30 +1690,16 @@ void *vcpu_map_dirty_ring(struct kvm_vm *vm, uint32_t vcpuid)
return vcpu->dirty_gfns;
}
-/*
- * VM Ioctl
- *
- * Input Args:
- * vm - Virtual Machine
- * cmd - Ioctl number
- * arg - Argument to pass to the ioctl
- *
- * Return: None
- *
- * Issues an arbitrary ioctl on a VM fd.
- */
-void vm_ioctl(struct kvm_vm *vm, unsigned long cmd, void *arg)
+int __vm_ioctl(struct kvm_vm *vm, unsigned long cmd, void *arg)
{
- int ret;
-
- ret = __vm_ioctl(vm, cmd, arg);
- TEST_ASSERT(ret == 0, "vm ioctl %lu failed, rc: %i errno: %i (%s)",
- cmd, ret, errno, strerror(errno));
+ return ioctl(vm->fd, cmd, arg);
}
-int __vm_ioctl(struct kvm_vm *vm, unsigned long cmd, void *arg)
+void _vm_ioctl(struct kvm_vm *vm, unsigned long cmd, const char *name, void *arg)
{
- return ioctl(vm->fd, cmd, arg);
+ int ret = __vm_ioctl(vm, cmd, arg);
+
+ TEST_ASSERT(!ret, __KVM_IOCTL_ERROR(name, ret));
}
/*