On Thu, 13 Jul 2017 13:02:33 +0200 Ladi Prosek <lpro...@redhat.com> wrote:
> virtqueue_error includes queue index in the error output and is preferred > for errors that pertain to a virtqueue rather than to the device as a whole. > > Signed-off-by: Ladi Prosek <lpro...@redhat.com> > --- Acked-by: Greg Kurz <gr...@kaod.org> > hw/9pfs/virtio-9p-device.c | 37 +++++++++++++++---------------------- > 1 file changed, 15 insertions(+), 22 deletions(-) > > diff --git a/hw/9pfs/virtio-9p-device.c b/hw/9pfs/virtio-9p-device.c > index 62650b0..cf16b4b 100644 > --- a/hw/9pfs/virtio-9p-device.c > +++ b/hw/9pfs/virtio-9p-device.c > @@ -54,16 +54,16 @@ static void handle_9p_output(VirtIODevice *vdev, > VirtQueue *vq) > } > > if (iov_size(elem->in_sg, elem->in_num) < 7) { > - virtio_error(vdev, > - "The guest sent a VirtFS request without space for " > - "the reply"); > + virtqueue_error(vq, > + "The guest sent a VirtFS request without space > for " > + "the reply"); > goto out_free_req; > } > > len = iov_to_buf(elem->out_sg, elem->out_num, 0, &out, 7); > if (len != 7) { > - virtio_error(vdev, "The guest sent a malformed VirtFS request: " > - "header size is %zd, should be 7", len); > + virtqueue_error(vq, "The guest sent a malformed VirtFS request: " > + "header size is %zd, should be 7", len); > goto out_free_req; > } > > @@ -150,10 +150,8 @@ static ssize_t virtio_pdu_vmarshal(V9fsPDU *pdu, size_t > offset, > > ret = v9fs_iov_vmarshal(elem->in_sg, elem->in_num, offset, 1, fmt, ap); > if (ret < 0) { > - VirtIODevice *vdev = VIRTIO_DEVICE(v); > - > - virtio_error(vdev, "Failed to encode VirtFS reply type %d", > - pdu->id + 1); > + virtqueue_error(v->vq, "Failed to encode VirtFS reply type %d", > + pdu->id + 1); > } > return ret; > } > @@ -168,9 +166,8 @@ static ssize_t virtio_pdu_vunmarshal(V9fsPDU *pdu, size_t > offset, > > ret = v9fs_iov_vunmarshal(elem->out_sg, elem->out_num, offset, 1, fmt, > ap); > if (ret < 0) { > - VirtIODevice *vdev = VIRTIO_DEVICE(v); > - > - virtio_error(vdev, "Failed to decode VirtFS request type %d", > pdu->id); > + virtqueue_error(v->vq, "Failed to decode VirtFS request type %d", > + pdu->id); > } > return ret; > } > @@ -184,11 +181,9 @@ static void virtio_init_in_iov_from_pdu(V9fsPDU *pdu, > struct iovec **piov, > size_t buf_size = iov_size(elem->in_sg, elem->in_num); > > if (buf_size < size) { > - VirtIODevice *vdev = VIRTIO_DEVICE(v); > - > - virtio_error(vdev, > - "VirtFS reply type %d needs %zu bytes, buffer has %zu", > - pdu->id + 1, size, buf_size); > + virtqueue_error(v->vq, > + "VirtFS reply type %d needs %zu bytes, buffer has > %zu", > + pdu->id + 1, size, buf_size); > } > > *piov = elem->in_sg; > @@ -204,11 +199,9 @@ static void virtio_init_out_iov_from_pdu(V9fsPDU *pdu, > struct iovec **piov, > size_t buf_size = iov_size(elem->out_sg, elem->out_num); > > if (buf_size < size) { > - VirtIODevice *vdev = VIRTIO_DEVICE(v); > - > - virtio_error(vdev, > - "VirtFS request type %d needs %zu bytes, buffer has > %zu", > - pdu->id, size, buf_size); > + virtqueue_error(v->vq, > + "VirtFS request type %d needs %zu bytes, " > + "buffer has %zu", pdu->id, size, buf_size); > } > > *piov = elem->out_sg;
pgp77H8MPJZoS.pgp
Description: OpenPGP digital signature