[vfio-users] vfio help needed (nvidia GTX 750 Ti persistent code 43)

Alex Williamson alex.williamson at redhat.com
Thu Sep 17 04:35:29 UTC 2015


On Wed, Sep 16, 2015 at 10:18 PM, Blank Field <ihatethisfield at gmail.com>
wrote:

> You have an AMD FM2 CPU.
> Do use SeaBIOS and make use of VGA I/O lines, you must have a VideoBIOS
> Extension support in your GPU's firmware. Since we are in the 21'st
> century, you have it.
> But the problem is that in order to make VGA work in a VM we must
> translate MMIO, PIO and IRQs needed into the VM.
> That is where IOMMU kicks in, and the related part of software is
> vfio-pci's x-vga option.
> Usually you enable x-vga, vfio tells IOMMU to translate all VGA related
> stuff from GPU to the VM and vice versa, but on that particular
> platform(AMD FM2) something is broken in hardware that crashes the IOMMU
> and the CPU when trying to work with VGA.
>

Actually the IOMMU isn't involved with VGA access.  The IOMMU is only
involved for DMA to or from the device.  These are device initiated memory
transfers.  VGA is not a DMA model, it's a programmed I/O model, where
every access is an explicit read or write initiated by the CPU.  In the
case of a VM, the vCPU is the initiator and vfio configures memory regions
for the VGA address space such that a vCPU traps into QEMU on access.  The
access is then completed through the vfio kernel module by way of the VGA
arbitration code.

Something may still be broken in FM2 hardware, but hopefully this clears up
how the IOMMU (doesn't) participate in VGA access.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listman.redhat.com/archives/vfio-users/attachments/20150916/29a8c6c7/attachment.htm>


More information about the vfio-users mailing list