About Kernel Documentation Linux Kernel Contact Linux Resources Linux Blog

Documentation / virtual / kvm / devices / vfio.txt


Based on kernel version 4.16.1. Page generated on 2018-04-09 11:53 EST.

1	VFIO virtual device
2	===================
3	
4	Device types supported:
5	  KVM_DEV_TYPE_VFIO
6	
7	Only one VFIO instance may be created per VM.  The created device
8	tracks VFIO groups in use by the VM and features of those groups
9	important to the correctness and acceleration of the VM.  As groups
10	are enabled and disabled for use by the VM, KVM should be updated
11	about their presence.  When registered with KVM, a reference to the
12	VFIO-group is held by KVM.
13	
14	Groups:
15	  KVM_DEV_VFIO_GROUP
16	
17	KVM_DEV_VFIO_GROUP attributes:
18	  KVM_DEV_VFIO_GROUP_ADD: Add a VFIO group to VFIO-KVM device tracking
19		kvm_device_attr.addr points to an int32_t file descriptor
20		for the VFIO group.
21	  KVM_DEV_VFIO_GROUP_DEL: Remove a VFIO group from VFIO-KVM device tracking
22		kvm_device_attr.addr points to an int32_t file descriptor
23		for the VFIO group.
24	  KVM_DEV_VFIO_GROUP_SET_SPAPR_TCE: attaches a guest visible TCE table
25		allocated by sPAPR KVM.
26		kvm_device_attr.addr points to a struct:
27	
28		struct kvm_vfio_spapr_tce {
29			__s32	groupfd;
30			__s32	tablefd;
31		};
32	
33		where
34		@groupfd is a file descriptor for a VFIO group;
35		@tablefd is a file descriptor for a TCE table allocated via
36			KVM_CREATE_SPAPR_TCE.
Hide Line Numbers


About Kernel Documentation Linux Kernel Contact Linux Resources Linux Blog