On 09/07/2015 16:13, Alex Williamson wrote: > On Thu, 2015-07-09 at 14:28 +0200, Joerg Roedel wrote: >> On Tue, Jul 07, 2015 at 11:17:48AM -0600, Alex Williamson wrote: >>> Hosting the bypass manager in kernel/irq seemed appropriate, but really >>> it could be anywhere. Does anyone have a different preference or >>> specifically want it under their scope? We had originally thought of >>> this as an IOMMU service, but I think we've generalized it beyond that. >>> I expect we should also add the necessary hooks to turn it into a >>> loadable module to keep the tinification folks happy, I'll incorporate >>> the current working changes and post a version with that. >> >> Yeah, this is only an IOMMU service on x86, afaik. So drivers/iommu is >> probably the wrong place to host it. >> >> Will there be any other producers than VFIO or any other consumers than >> KVM? If not, it should live in one of these spaces. KVM is probably the >> best choice, as any hardware feature that uses this targets >> virtualization, so there will hardly ever be another consumer than KVM. > > If we think that it's *only* a kvm-vfio interaction then we could add it > to virt/kvm/vfio.c. vfio could use symbol_get to avoid a module > dependency and effectively disable the code path when not used with kvm. > The reverse model of hosting it in vfio and using symbol_get from > kvm-vfio would also work. Do we really want to declare it to be > kvm-vfio specific though? Another option would be to simply host it > under virt/lib with module dependencies for both vfio and kvm. I wonder if in the future we may have some kind of driver-mediated passthrough, e.g. for network drivers. They might use the bypass mechanism too. So I think drivers/vfio is too restrictive. virt/ right now only hosts KVM, but it could for example host lguest too. virt/lib/ is okay with me. Paolo -- 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