diff --git a/include/kvm/kvm.h b/include/kvm/kvm.h index 0bec7a9..35bb400 100644 --- a/include/kvm/kvm.h +++ b/include/kvm/kvm.h @@ -81,4 +81,6 @@ static inline void *guest_flat_to_host(struct kvm *kvm, unsigned long offset) return kvm->ram_start + offset; } +bool kvm__has_cap(struct kvm *kvm, u32 cap); + #endif /* KVM__KVM_H */ diff --git a/kvm.c b/kvm.c index 3fb46f6..9583ab2 100644 --- a/kvm.c +++ b/kvm.c @@ -520,3 +520,8 @@ void kvm__notify_paused(void) mutex_lock(&pause_lock); mutex_unlock(&pause_lock); } + +bool kvm__has_cap(struct kvm *kvm, u32 cap) +{ + return ioctl(kvm->sys_fd, KVM_CHECK_EXTENSION, cap) == 0; +}