@@ -1094,6 +1094,20 @@ int kvm_assign_set_msix_entry(kvm_context_t kvm,
}
#endif
+#ifdef KVM_CAP_MSIX_MASK
+int kvm_get_msix_entry(kvm_context_t kvm,
+ struct kvm_msix_entry *entry)
+{
+ return kvm_vm_ioctl(kvm_state, KVM_GET_MSIX_ENTRY, entry);
+}
+
+int kvm_update_msix_mmio(kvm_context_t kvm,
+ struct kvm_msix_mmio *msix_mmio)
+{
+ return kvm_vm_ioctl(kvm_state, KVM_UPDATE_MSIX_MMIO, msix_mmio);
+}
+#endif
+
#if defined(KVM_CAP_IRQFD) && defined(CONFIG_EVENTFD)
#include <sys/eventfd.h>
@@ -745,6 +745,13 @@ int kvm_assign_set_msix_entry(kvm_context_t kvm,
struct kvm_assigned_msix_entry *entry);
#endif
+#ifdef KVM_CAP_MSIX_MASK
+int kvm_get_msix_entry(kvm_context_t kvm,
+ struct kvm_msix_entry *entry);
+int kvm_update_msix_mmio(kvm_context_t kvm,
+ struct kvm_msix_mmio *msix_mmio);
+#endif
+
#else /* !CONFIG_KVM */
typedef struct kvm_context *kvm_context_t;