• Andy Lutomirski's avatar
    virtio_ring: Support DMA APIs · 780bc790
    Andy Lutomirski authored
    virtio_ring currently sends the device (usually a hypervisor)
    physical addresses of its I/O buffers.  This is okay when DMA
    addresses and physical addresses are the same thing, but this isn't
    always the case.  For example, this never works on Xen guests, and
    it is likely to fail if a physical "virtio" device ever ends up
    behind an IOMMU or swiotlb.
    
    The immediate use case for me is to enable virtio on Xen guests.
    For that to work, we need vring to support DMA address translation
    as well as a corresponding change to virtio_pci or to another
    driver.
    Signed-off-by: default avatarAndy Lutomirski <luto@kernel.org>
    Signed-off-by: default avatarMichael S. Tsirkin <mst@redhat.com>
    780bc790
virtio_ring.c 28.2 KB