qemu-e2k/hw/virtio
Jason Wang 8607f5c307 virtio: convert to use DMA api
Currently, all virtio devices bypass IOMMU completely. This is because
address_space_memory is assumed and used during DMA emulation. This
patch converts the virtio core API to use DMA API. This idea is

- introducing a new transport specific helper to query the dma address
  space. (only pci version is implemented).
- query and use this address space during virtio device guest memory
  accessing when iommu platform (VIRTIO_F_IOMMU_PLATFORM) was enabled
  for this device.

Cc: Michael S. Tsirkin <mst@redhat.com>
Cc: Stefan Hajnoczi <stefanha@redhat.com>
Cc: Kevin Wolf <kwolf@redhat.com>
Cc: Amit Shah <amit.shah@redhat.com>
Cc: Paolo Bonzini <pbonzini@redhat.com>
Cc: qemu-block@nongnu.org
Signed-off-by: Jason Wang <jasowang@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
2017-01-10 05:56:58 +02:00
..
Makefile.objs virtio-crypto-pci: add virtio crypto pci support 2016-11-01 19:21:08 +02:00
trace-events virtio: set ISR on dataplane notifications 2016-11-18 17:29:25 +02:00
vhost-backend.c vhost-vsock: add virtio sockets device 2016-09-10 00:28:08 +03:00
vhost-user.c char: use qemu_chr_fe* functions with CharBackend argument 2016-10-24 15:27:21 +02:00
vhost-vsock.c virtio: cleanup VMSTATE_VIRTIO_DEVICE 2016-10-10 02:21:43 +03:00
vhost.c virtio: introduce grab/release_ioeventfd to fix vhost 2016-11-18 17:29:25 +02:00
virtio-balloon.c virtio: rename virtqueue_discard to virtqueue_unpop 2016-11-15 17:20:36 +02:00
virtio-bus.c virtio: convert to use DMA api 2017-01-10 05:56:58 +02:00
virtio-crypto-pci.c virtio-crypto: tag as not hotpluggable and migration 2016-11-15 17:20:36 +02:00
virtio-crypto.c virtio-crypto: fix possible integer and heap overflow 2017-01-10 05:56:58 +02:00
virtio-mmio.c virtio: avoid using guest_notifier_mask in vhost-user mode 2016-12-16 01:14:54 +02:00
virtio-pci.c virtio: convert to use DMA api 2017-01-10 05:56:58 +02:00
virtio-pci.h virtio-pci: Fix cross-version migration with older machines 2016-12-15 07:35:19 +00:00
virtio-rng.c virtio: cleanup VMSTATE_VIRTIO_DEVICE 2016-10-10 02:21:43 +03:00
virtio.c virtio: convert to use DMA api 2017-01-10 05:56:58 +02:00