qemu/hw
Paolo Bonzini 2a6cdd6d35 virtio-blk: correctly dirty guest memory
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 <wency@cn.fujitsu.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Tested-by: Li Zhijian <lizhijian@cn.fujitsu.com>
Message-id: 1427997044-392-1-git-send-email-pbonzini@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
2015-04-08 10:39:18 +01:00
..
9pfs 9pfs: Fix warnings from Sparse 2015-03-19 11:11:55 +03:00
acpi acpi: Add missing GCC_FMT_ATTR to local function 2015-03-25 13:39:24 +01:00
alpha QOM infrastructure fixes and device conversions 2015-03-02 13:20:43 +00:00
arm hw: Contain drive, serial, parallel, net misuse 2015-04-02 14:36:57 +01:00
audio pcspk: Fix I/O port name 2015-04-04 09:45:59 +03:00
block virtio-blk: correctly dirty guest memory 2015-04-08 10:39:18 +01:00
bt
char sysbus: Make devices picking up backends unavailable with -device 2015-04-02 15:30:44 +02:00
core powerpc: fix -machine usb=no for newworld and pseries machines 2015-03-25 22:49:47 +01:00
cpu
cris
display Fix remaining warnings from Sparse (void return) 2015-03-19 11:11:55 +03:00
dma omap: Fix warnings from Sparse 2015-03-19 11:11:55 +03:00
gpio omap: Fix warnings from Sparse 2015-03-19 11:11:55 +03:00
i2c pci: Trivial device model conversions to realize 2015-02-26 12:42:16 +01:00
i386 pc: acpi: fix pvpanic regression 2015-04-01 10:06:38 +02:00
ide AHCI: Protect cmd register 2015-03-27 15:48:11 -04:00
input adb.c: include ADBDevice parent state in KBDState and MouseState 2015-03-09 15:00:04 +01:00
intc target-i386: clear bsp bit when designating bsp 2015-04-02 15:57:27 +02:00
ipack pci: Trivial device model conversions to realize 2015-02-26 12:42:16 +01:00
isa hw: Mark devices picking up char backends actively FIXME 2015-04-02 15:30:28 +02:00
lm32 configure: opengl overhaul 2015-03-12 15:49:57 +01:00
m68k m68k: memory: Replace memory_region_init_ram with memory_region_allocate_system_memory 2015-03-25 14:35:24 +01:00
mem pc-dimm: Add description for device list. 2015-03-19 11:17:36 +03:00
microblaze Remove superfluous '\n' around error_report() 2015-03-10 08:15:33 +03:00
mips mips: memory: Replace memory_region_init_ram with memory_region_allocate_system_memory 2015-03-25 14:35:31 +01:00
misc omap: Fix warnings from Sparse 2015-03-19 11:11:55 +03:00
moxie
net hw/net/e1000: fix integer endianness 2015-03-27 10:23:50 +00:00
nvram fw_cfg: factor out initialization of FW_CFG_ID (rev. number) 2015-03-25 13:37:10 +01:00
openrisc
pci pcie_aer: fix comment to match pcie spec 2015-03-18 12:48:21 +01:00
pci-bridge pci, pc, virtio fixes and cleanups 2015-03-09 09:14:28 +00:00
pci-host machine: replace qemu opts with iommu property 2015-03-11 18:10:43 +01:00
pcmcia
ppc Bugfixes and making SCSI adapters IOMMU-friendly. 2015-03-26 17:33:35 +00:00
s390x s390x/ipl: avoid sign extension 2015-03-30 09:25:17 +02:00
scsi virtio-scsi-dataplane: fix memory leak for VirtIOSCSIVring 2015-03-26 14:23:16 +01:00
sd sysbus: Make devices picking up backends unavailable with -device 2015-04-02 15:30:44 +02:00
sh4 r2d: Don't use legacy -usbdevice support for setting up board 2015-02-18 10:53:10 +01:00
sparc sparc: memory: Replace memory_region_init_ram with memory_region_allocate_system_memory 2015-03-25 14:36:14 +01:00
sparc64 fw_cfg: factor out initialization of FW_CFG_ID (rev. number) 2015-03-25 13:37:10 +01:00
ssi omap: Fix warnings from Sparse 2015-03-19 11:11:55 +03:00
timer Fix remaining warnings from Sparse (void return) 2015-03-19 11:11:55 +03:00
tpm Fix remaining warnings from Sparse (void return) 2015-03-19 11:11:55 +03:00
tricore
unicore32 unicore32: Use uc32_cpu_init() 2015-03-10 17:07:28 +01:00
usb usb: bugfix collection. 2015-03-20 09:50:08 +00:00
vfio vfio: Remove superfluous '\n' around error_report() 2015-03-10 08:15:33 +03:00
virtio virtio: validate the existence of handle_output before calling it 2015-03-16 15:29:51 +01:00
watchdog i6300esb: Fix signed integer overflow 2015-03-25 13:38:05 +01:00
xen xen-pt: fix Out-of-bounds read 2015-03-10 08:15:33 +03:00
xenpv
xtensa xtensa: Remove superfluous '\n' around error_report() 2015-03-10 08:15:33 +03:00
Makefile.objs