xemu/hw/virtio
Stefan Hajnoczi 2640d2a5ff virtio: add virtio_detach_element()
During device reset or similar situations a VirtQueueElement needs to be
freed without pushing it onto the used ring or rewinding the virtqueue.
Extract a new function to do this.

Later patches add virtio_detach_element() calls to existing device so
that scatter-gather lists are unmapped and vq->inuse goes back to zero
during device reset.  Currently some devices don't bother and simply
call g_free(elem) which is not a clean way to throw away a
VirtQueueElement.

Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Acked-by: Greg Kurz <groug@kaod.org>
Reviewed-by: Ladi Prosek <lprosek@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
2016-10-10 01:16:58 +03:00
..
Makefile.objs vhost-vsock: add virtio sockets device 2016-09-10 00:28:08 +03:00
trace-events trace: move hw/virtio/virtio-balloon.c trace points into correct file 2016-09-28 19:17:55 +01:00
vhost-backend.c vhost-vsock: add virtio sockets device 2016-09-10 00:28:08 +03:00
vhost-user.c Revert "vhost-user: Attempt to fix a race with set_mem_table." 2016-08-15 15:12:21 +01:00
vhost-vsock.c vhost-vsock: add virtio sockets device 2016-09-10 00:28:08 +03:00
vhost.c vhost: don't set vring call if no vector 2016-09-09 20:58:34 +03:00
virtio-balloon.c virtio-balloon: Remove needless precompiled directive 2016-10-10 01:16:57 +03:00
virtio-bus.c virtio-bus: Plug devices after features are negotiated 2016-09-15 17:30:03 +03:00
virtio-mmio.c virtio-mmio: format transport base address in BusClass.get_dev_path 2016-07-14 16:51:36 +01:00
virtio-pci.c virtio-bus: Plug devices after features are negotiated 2016-09-15 17:30:03 +03:00
virtio-pci.h virtio-bus: Plug devices after features are negotiated 2016-09-15 17:30:03 +03:00
virtio-rng.c virtio-rng: Wrap in vmstate 2016-07-21 20:44:20 +03:00
virtio.c virtio: add virtio_detach_element() 2016-10-10 01:16:58 +03:00