So far KVM and VFIO are mostly transparent to each other. However, there are users who would rely on them both. For example, KVMGT relies on VFIO to mediate device operations, and it also relies on KVM for features such as guest page tracking. To do that, it needs to know which KVM instance a vfio_group is attached to. There is already a kvm_vfio device serving for similar purpose, this patchset extend it to allow external usrs like KVMGT to get KVM instance from the vfio_group. I picked one of Kirti's patchset from: https://lkml.org/lkml/2016/10/26/1119 for the function to get the vfio_group from a given device. Changes v3: - don't touch kvm_put_kvm, vfio won't need it - fix a race condition Changes v2: - As Paolo suggested, drop the type and get/put ops from vfio, assuming that the data will always be kvm. Jike Song (4): vfio: export functions to get vfio_group from device and put it KVM: move kvm_get_kvm to kvm_host.h vfio: implement APIs to set/put kvm to/from vfio group KVM: set/clear kvm to/from vfio group during add/delete Kirti Wankhede (1): vfio: Rearrange functions to get vfio_group from dev drivers/vfio/vfio.c | 57 +++++++++++++++++++++++++++++++++++++++++------- include/linux/kvm_host.h | 5 ++++- include/linux/vfio.h | 7 ++++++ virt/kvm/kvm_main.c | 6 ----- virt/kvm/vfio.c | 33 ++++++++++++++++++++++++++++ 5 files changed, 93 insertions(+), 15 deletions(-) -- 1.9.1 -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html