mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-26 01:45:38 +07:00
ec53500fae
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>
23 lines
744 B
Plaintext
23 lines
744 B
Plaintext
VFIO virtual device
|
|
===================
|
|
|
|
Device types supported:
|
|
KVM_DEV_TYPE_VFIO
|
|
|
|
Only one VFIO instance may be created per VM. The created device
|
|
tracks VFIO groups in use by the VM and features of those groups
|
|
important to the correctness and acceleration of the VM. As groups
|
|
are enabled and disabled for use by the VM, KVM should be updated
|
|
about their presence. When registered with KVM, a reference to the
|
|
VFIO-group is held by KVM.
|
|
|
|
Groups:
|
|
KVM_DEV_VFIO_GROUP
|
|
|
|
KVM_DEV_VFIO_GROUP attributes:
|
|
KVM_DEV_VFIO_GROUP_ADD: Add a VFIO group to VFIO-KVM device tracking
|
|
KVM_DEV_VFIO_GROUP_DEL: Remove a VFIO group from VFIO-KVM device tracking
|
|
|
|
For each, kvm_device_attr.addr points to an int32_t file descriptor
|
|
for the VFIO group.
|