On Wed, May 13, 2020 at 12:02 AM Paolo Bonzini <pbonzini@xxxxxxxxxx> wrote: > > On 12/05/20 19:14, Alex Williamson wrote: > > But why not assign the individual platform devices via vfio-platform > > rather than assign the i2c controller via vfio-pci and then assembling > > the interrupts from those sub-devices with this ad-hoc interface? An > > emulated i2c controller in the guest could provide the same discovery > > mechanism as is available in the host. > > I agree. I read the whole discussion, but I still don't understand why > this is not using vfio-platform. > > Alternatively, if you assign the i2c controller, I don't understand why > the guest doesn't discover interrupts on its own. Of course you need to > tell the guest about the devices in the ACPI tables, but why is this new > concept necessary? > > (Finally, in the past we were doing device assignment tasks within KVM > and it was a bad idea. Anything you want to do within KVM with respect > to device assignment, someone else will want to do it from bare metal. Are you saying people would want to use this in non-virtualized scenarios like running drivers in userspace without any VMM/guest? And they could do that if this was part of VFIO and not part of KVM? > virt/lib/irqbypass.c is a special case because it's an IOMMU feature > that is designed to work in concert with VMX posted interrupts and SVM > AVIC, so in guest mode only). > > Paolo >