[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL 03/11] KVM: add support for any length io eventfd
From: |
Michael S. Tsirkin |
Subject: |
[Qemu-devel] [PULL 03/11] KVM: add support for any length io eventfd |
Date: |
Thu, 12 Nov 2015 17:09:17 +0200 |
From: Jason Wang <address@hidden>
Signed-off-by: Jason Wang <address@hidden>
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>
Acked-by: Paolo Bonzini <address@hidden>
---
include/sysemu/kvm.h | 8 ++++++++
kvm-all.c | 4 ++++
kvm-stub.c | 1 +
3 files changed, 13 insertions(+)
diff --git a/include/sysemu/kvm.h b/include/sysemu/kvm.h
index 4ac6176..b31f325 100644
--- a/include/sysemu/kvm.h
+++ b/include/sysemu/kvm.h
@@ -53,6 +53,7 @@ extern bool kvm_gsi_routing_allowed;
extern bool kvm_gsi_direct_mapping;
extern bool kvm_readonly_mem_allowed;
extern bool kvm_direct_msi_allowed;
+extern bool kvm_ioeventfd_any_length_allowed;
#if defined CONFIG_KVM || !defined NEED_CPU_H
#define kvm_enabled() (kvm_allowed)
@@ -153,6 +154,12 @@ extern bool kvm_direct_msi_allowed;
*/
#define kvm_direct_msi_enabled() (kvm_direct_msi_allowed)
+/**
+ * kvm_ioeventfd_any_length_enabled:
+ * Returns: true if KVM allows any length io eventfd.
+ */
+#define kvm_ioeventfd_any_length_enabled() (kvm_ioeventfd_any_length_allowed)
+
#else
#define kvm_enabled() (0)
#define kvm_irqchip_in_kernel() (false)
@@ -166,6 +173,7 @@ extern bool kvm_direct_msi_allowed;
#define kvm_gsi_direct_mapping() (false)
#define kvm_readonly_mem_enabled() (false)
#define kvm_direct_msi_enabled() (false)
+#define kvm_ioeventfd_any_length_enabled() (false)
#endif
struct kvm_run;
diff --git a/kvm-all.c b/kvm-all.c
index de3c8c4..c648b81 100644
--- a/kvm-all.c
+++ b/kvm-all.c
@@ -109,6 +109,7 @@ bool kvm_allowed;
bool kvm_readonly_mem_allowed;
bool kvm_vm_attributes_allowed;
bool kvm_direct_msi_allowed;
+bool kvm_ioeventfd_any_length_allowed;
static const KVMCapabilityInfo kvm_required_capabilites[] = {
KVM_CAP_INFO(USER_MEMORY),
@@ -1611,6 +1612,9 @@ static int kvm_init(MachineState *ms)
kvm_vm_attributes_allowed =
(kvm_check_extension(s, KVM_CAP_VM_ATTRIBUTES) > 0);
+ kvm_ioeventfd_any_length_allowed =
+ (kvm_check_extension(s, KVM_CAP_IOEVENTFD_ANY_LENGTH) > 0);
+
ret = kvm_arch_init(ms, s);
if (ret < 0) {
goto err;
diff --git a/kvm-stub.c b/kvm-stub.c
index a5051f7..dc97a5e 100644
--- a/kvm-stub.c
+++ b/kvm-stub.c
@@ -30,6 +30,7 @@ bool kvm_gsi_routing_allowed;
bool kvm_gsi_direct_mapping;
bool kvm_allowed;
bool kvm_readonly_mem_allowed;
+bool kvm_ioeventfd_any_length_allowed;
int kvm_init_vcpu(CPUState *cpu)
{
--
MST
- [Qemu-devel] [PULL 00/11] virtio, vhost: fixes for 2.5, Michael S. Tsirkin, 2015/11/12
- [Qemu-devel] [PULL 01/11] virtio-pci: fix 1.0 virtqueue migration, Michael S. Tsirkin, 2015/11/12
- [Qemu-devel] [PULL 03/11] KVM: add support for any length io eventfd,
Michael S. Tsirkin <=
- [Qemu-devel] [PULL 02/11] memory: don't try to adjust endianness for zero length eventfd, Michael S. Tsirkin, 2015/11/12
- [Qemu-devel] [PULL 04/11] virtio-pci: use zero length mmio eventfd for 1.0 notification cap when possible, Michael S. Tsirkin, 2015/11/12
- [Qemu-devel] [PULL 05/11] virtio-pci: introduce pio notification capability for modern device, Michael S. Tsirkin, 2015/11/12
- [Qemu-devel] [PULL 06/11] virtio-pci: unbreak queue_enable read, Michael S. Tsirkin, 2015/11/12
- [Qemu-devel] [PULL 08/11] vhost: rename RESET_DEVICE backto RESET_OWNER, Michael S. Tsirkin, 2015/11/12
- [Qemu-devel] [PULL 09/11] vhost: send SET_VRING_ENABLE at start/stop, Michael S. Tsirkin, 2015/11/12
- [Qemu-devel] [PULL 07/11] vhost-user: modify SET_LOG_BASE to pass mmap size and offset, Michael S. Tsirkin, 2015/11/12
- [Qemu-devel] [PULL 10/11] hw/virtio: Add PCIe capability to virtio devices, Michael S. Tsirkin, 2015/11/12
- [Qemu-devel] [PULL 11/11] virtio-9p: add savem handlers, Michael S. Tsirkin, 2015/11/12
- Re: [Qemu-devel] [PULL 00/11] virtio, vhost: fixes for 2.5, Peter Maydell, 2015/11/12