On Tue, Jan 24, 2017 at 07:04:15PM +0100, Paolo Bonzini wrote: > @@ -689,18 +714,34 @@ void *virtqueue_pop(VirtQueue *vq, size_t sz) > } > > i = head; > - vring_desc_read(vdev, &desc, desc_pa, i); > + > + len = max * sizeof(VRingDesc); > + vring_desc_ptr = address_space_map(vdev->dma_as, vq->vring.desc, &len, > false); > + if (len < max * sizeof(VRingDesc)) { > + virtio_error(vdev, "Cannot map descriptor ring"); > + return NULL;
Missing address_space_unmap() if vring_desc_ptr is non-NULL.
signature.asc
Description: PGP signature