• Maxime Coquelin's avatar
    vduse: implement DMA sync callbacks · d7b4e328
    Maxime Coquelin authored
    Since commit 295525e2 ("virtio_net: merge dma
    operations when filling mergeable buffers"), VDUSE device
    require support for DMA's .sync_single_for_cpu() operation
    as the memory is non-coherent between the device and CPU
    because of the use of a bounce buffer.
    
    This patch implements both .sync_single_for_cpu() and
    .sync_single_for_device() callbacks, and also skip bounce
    buffer copies during DMA map and unmap operations if the
    DMA_ATTR_SKIP_CPU_SYNC attribute is set to avoid extra
    copies of the same buffer.
    Signed-off-by: default avatarMaxime Coquelin <maxime.coquelin@redhat.com>
    Message-Id: <20240219170606.587290-1-maxime.coquelin@redhat.com>
    Signed-off-by: default avatarMichael S. Tsirkin <mst@redhat.com>
    d7b4e328
iova_domain.h 2.47 KB