summaryrefslogtreecommitdiffstats
path: root/virt
diff options
context:
space:
mode:
authorJason Wang <jasowang@redhat.com>2015-09-15 02:41:59 -0400
committerPaolo Bonzini <pbonzini@redhat.com>2015-10-01 09:06:31 -0400
commite9ea5069d9e569c32ab913c39467df32e056b3a7 (patch)
tree1e3e34946e2875564aa7a85a454f851d1575dac8 /virt
parent931c33b178b091cced2a6b3f57f04655f8ff5207 (diff)
kvm: add capability for any-length ioeventfds
Cc: Gleb Natapov <gleb@kernel.org> Cc: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Jason Wang <jasowang@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'virt')
-rw-r--r--virt/kvm/eventfd.c4
-rw-r--r--virt/kvm/kvm_main.c1
2 files changed, 2 insertions, 3 deletions
diff --git a/virt/kvm/eventfd.c b/virt/kvm/eventfd.c
index 79db45336e3a..ac89299b8699 100644
--- a/virt/kvm/eventfd.c
+++ b/virt/kvm/eventfd.c
@@ -914,9 +914,7 @@ kvm_assign_ioeventfd(struct kvm *kvm, struct kvm_ioeventfd *args)
914 return -EINVAL; 914 return -EINVAL;
915 915
916 /* ioeventfd with no length can't be combined with DATAMATCH */ 916 /* ioeventfd with no length can't be combined with DATAMATCH */
917 if (!args->len && 917 if (!args->len && (args->flags & KVM_IOEVENTFD_FLAG_DATAMATCH))
918 args->flags & (KVM_IOEVENTFD_FLAG_PIO |
919 KVM_IOEVENTFD_FLAG_DATAMATCH))
920 return -EINVAL; 918 return -EINVAL;
921 919
922 ret = kvm_assign_ioeventfd_idx(kvm, bus_idx, args); 920 ret = kvm_assign_ioeventfd_idx(kvm, bus_idx, args);
diff --git a/virt/kvm/kvm_main.c b/virt/kvm/kvm_main.c
index 23116dcb2129..afd7ae6aec65 100644
--- a/virt/kvm/kvm_main.c
+++ b/virt/kvm/kvm_main.c
@@ -2718,6 +2718,7 @@ static long kvm_vm_ioctl_check_extension_generic(struct kvm *kvm, long arg)
2718 case KVM_CAP_IRQFD: 2718 case KVM_CAP_IRQFD:
2719 case KVM_CAP_IRQFD_RESAMPLE: 2719 case KVM_CAP_IRQFD_RESAMPLE:
2720#endif 2720#endif
2721 case KVM_CAP_IOEVENTFD_ANY_LENGTH:
2721 case KVM_CAP_CHECK_EXTENSION_VM: 2722 case KVM_CAP_CHECK_EXTENSION_VM:
2722 return 1; 2723 return 1;
2723#ifdef CONFIG_HAVE_KVM_IRQ_ROUTING 2724#ifdef CONFIG_HAVE_KVM_IRQ_ROUTING