• P
    intel_iommu: dma read/write draining support · ccc23bb0
    Peter Xu 提交于
    Support DMA read/write draining should be easy for existing VT-d
    emulation since the emulation itself does not have any request queue
    there so we don't need to do anything to flush the un-commited queue.
    What we need to do is to declare the support.
    
    These capabilities are required to pass Windows SVVP test program.  It
    is verified that when with parameters "x-aw-bits=48,caching-mode=off"
    we can pass the Windows SVVP test with this patch applied.  Otherwise
    we'll fail with:
    
            IOMMU[0] - DWD (DMA write draining) not supported
            IOMMU[0] - DWD (DMA read draining) not supported
            Segment 0 has no DMA remapping capable IOMMU units
    
    However since these bits are not declared support for QEMU<=3.1, we'll
    need a compatibility bit for it and we turn this on by default only
    for QEMU>=4.0.
    
    Please refer to VT-d spec 6.5.4 for more information.
    
    CC: Yu Wang <wyu@redhat.com>
    Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=1654550Signed-off-by: NPeter Xu <peterx@redhat.com>
    Reviewed-by: NMichael S. Tsirkin <mst@redhat.com>
    Signed-off-by: NMichael S. Tsirkin <mst@redhat.com>
    ccc23bb0
pc.h 26.2 KB