On Tue, Apr 7, 2015 at 3:11 PM, Stefan Hajnoczi <stefa...@redhat.com> wrote:
> On Thu, Apr 02, 2015 at 07:50:44PM +0200, Paolo Bonzini wrote:
>> After qemu_iovec_destroy, the QEMUIOVector's size is zeroed and
>> the zero size ultimately is used to compute virtqueue_push's len
>> argument.  Therefore, reads from virtio-blk devices did not
>> migrate their results correctly.  (Writes were okay).
>>
>> Save the size in virtio_blk_handle_request, and use it when the request
>> is completed.
>>
>> Based on a patch by Wen Congyang.
>>
>> Signed-off-by: Wen Congyang <we...@cn.fujitsu.com>
>> Signed-off-by: Paolo Bonzini <pbonz...@redhat.com>
>> ---
>>  hw/block/dataplane/virtio-blk.c |  3 +--
>>  hw/block/virtio-blk.c           | 13 ++++++++++++-
>>  include/hw/virtio/virtio-blk.h  |  1 +
>>  3 files changed, 14 insertions(+), 3 deletions(-)
>
> This also changes len for VIRTIO_BLK_T_SCSI_CMD and VIRTIO_BLK_T_GET_ID.
> The Linux virtio_blk.ko and Windows viostor drivers ignore the value
> anyway so what's the worst thing that could happen? :)
>
> Reviewed-by: Stefan Hajnoczi <stefa...@redhat.com>

I'd like to merge Paolo's patch for QEMU 2.3-rc3.  It ensures that
virtio-blk unmaps and dirties "in" buffers correctly.

The Message-Id for the patch I'm referring to is
<1427997044-392-1-git-send-email-pbonz...@redhat.com>.

Any objections?  Speak now if it's critical, otherwise please send
follow-up patches for QEMU 2.4.

Stefan

Reply via email to