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, when it will be detached. There is already a kvm_vfio device serving for similar purpose, this series extends it to allow users register notifiers on a vfio_group, and notify kvm:group attaching and detaching events to that. Based on Kirti's v14 series, without [12/22]: http://www.spinics.net/lists/kvm/msg140951.html Changes v5: - separate vfio_group and vfio_iommu events from each other - force user to specifiy which type it is interested in, and which events. Register it IFF all events are supported Changes v4: - use a notifier-based implementation in vfio_group - combine the notifier along with iommu notifier by Kirti 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 (3): vfio: vfio_register_notifier: classify iommu notfier vfio: support notifier chain in vfio_group kvm: set/clear kvm to/from vfio_group when group add/delete drivers/vfio/vfio.c | 145 +++++++++++++++++++++++++++++++++++++++++++-------- include/linux/vfio.h | 22 ++++++-- virt/kvm/vfio.c | 31 +++++++++++ 3 files changed, 173 insertions(+), 25 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