diff options
author | Alex Williamson <alex.williamson@redhat.com> | 2013-10-30 11:02:17 -0600 |
---|---|---|
committer | Paolo Bonzini <pbonzini@redhat.com> | 2013-10-30 19:02:03 +0100 |
commit | ec53500fae421e07c5d035918ca454a429732ef4 (patch) | |
tree | 3b9e0c67b9982f5b374e819a55cd510c14d481b8 /virt/kvm/kvm_main.c | |
parent | 84cffe499b9418d6c3b4de2ad9599cc2ec50c607 (diff) | |
download | linux-stable-ec53500fae421e07c5d035918ca454a429732ef4.tar.gz linux-stable-ec53500fae421e07c5d035918ca454a429732ef4.tar.bz2 linux-stable-ec53500fae421e07c5d035918ca454a429732ef4.zip |
kvm: Add VFIO device
So far we've succeeded at making KVM and VFIO mostly unaware of each
other, but areas are cropping up where a connection beyond eventfds
and irqfds needs to be made. This patch introduces a KVM-VFIO device
that is meant to be a gateway for such interaction. The user creates
the device and can add and remove VFIO groups to it via file
descriptors. When a group is added, KVM verifies the group is valid
and gets a reference to it via the VFIO external user interface.
Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'virt/kvm/kvm_main.c')
-rw-r--r-- | virt/kvm/kvm_main.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/virt/kvm/kvm_main.c b/virt/kvm/kvm_main.c index 9ca014da134d..82c4047aa0e3 100644 --- a/virt/kvm/kvm_main.c +++ b/virt/kvm/kvm_main.c @@ -2271,6 +2271,11 @@ static int kvm_ioctl_create_device(struct kvm *kvm, ops = &kvm_xics_ops; break; #endif +#ifdef CONFIG_KVM_VFIO + case KVM_DEV_TYPE_VFIO: + ops = &kvm_vfio_ops; + break; +#endif default: return -ENODEV; } |