diff options
author | Michael S. Tsirkin <mst@redhat.com> | 2014-03-31 14:50:38 -0400 |
---|---|---|
committer | Marcelo Tosatti <mtosatti@redhat.com> | 2014-04-17 13:01:42 -0400 |
commit | f848a5a8dcb655553423f77cc98909a04e64173d (patch) | |
tree | 02e212c8eeeb52e74876408bb5e7e5d2febae379 /arch/x86/kvm | |
parent | cd9ae5fe47dfb9820976c3c38c70f4b07a5a1c36 (diff) |
KVM: support any-length wildcard ioeventfd
It is sometimes benefitial to ignore IO size, and only match on address.
In hindsight this would have been a better default than matching length
when KVM_IOEVENTFD_FLAG_DATAMATCH is not set, In particular, this kind
of access can be optimized on VMX: there no need to do page lookups.
This can currently be done with many ioeventfds but in a suboptimal way.
However we can't change kernel/userspace ABI without risk of breaking
some applications.
Use len = 0 to mean "ignore length for matching" in a more optimal way.
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
Diffstat (limited to 'arch/x86/kvm')
-rw-r--r-- | arch/x86/kvm/x86.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c index 8b8fc0b792ba..bc4aaf68190c 100644 --- a/arch/x86/kvm/x86.c +++ b/arch/x86/kvm/x86.c | |||
@@ -2644,6 +2644,7 @@ int kvm_dev_ioctl_check_extension(long ext) | |||
2644 | case KVM_CAP_IRQ_INJECT_STATUS: | 2644 | case KVM_CAP_IRQ_INJECT_STATUS: |
2645 | case KVM_CAP_IRQFD: | 2645 | case KVM_CAP_IRQFD: |
2646 | case KVM_CAP_IOEVENTFD: | 2646 | case KVM_CAP_IOEVENTFD: |
2647 | case KVM_CAP_IOEVENTFD_NO_LENGTH: | ||
2647 | case KVM_CAP_PIT2: | 2648 | case KVM_CAP_PIT2: |
2648 | case KVM_CAP_PIT_STATE2: | 2649 | case KVM_CAP_PIT_STATE2: |
2649 | case KVM_CAP_SET_IDENTITY_MAP_ADDR: | 2650 | case KVM_CAP_SET_IDENTITY_MAP_ADDR: |