RE: Virtualizing MSI-X on IMS via VFIO

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



> From: Jason Gunthorpe <jgg@xxxxxxxxxx>
> Sent: Thursday, June 24, 2021 12:41 AM
> 
> On Wed, Jun 23, 2021 at 06:31:34PM +0200, Thomas Gleixner wrote:
> 
> > So IMO creating a proper paravirt interface is the right approach.  It
> > avoids _all_ of the trouble and will be necessary anyway once you want
> > to support devices which store the message/pasid in system memory and
> > not in on-device memory.
> 
> I think this is basically where we got to in the other earlier
> discussion with using IMS natively in VMs - it can't be done
> generically without a new paravirt interface.
> 
> The guest needs a paravirt interface to program the IOMMU to route MSI
> vectors to the guest's vAPIC and then the guest itself can deliver an
> addr/data pair directly to the HW.
> 
> In this mode qemu would not emulate MSI at all so will avoid all the
> problems you identified.

No emulation for PF/VF.

But emulation might be required for mdev for two reasons:

1)   the ims entries for mdevs are collapsed together;
2)   there are other fields in ims entry which cannot allow guest to
      control, e.g. PASID;

> 
> How to build that and provide backwards compat is an open
> question. Instead that thread went into blocking IMS on VM situations..
> 
> Jason




[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux