qemu-irix/hw/scsi
Paolo Bonzini 0c80570170 virtio-scsi: work around bug in old BIOSes
Old BIOSes left some padding by mistake after the req_size/resp_size.
New QEMU does not like it, thinking it is a bidirectional command.

As a workaround, we can check if the ANY_LAYOUT bit is set; if not, we
always consider the first buffer as the virtio-scsi request/response,
because, back when QEMU did not support ANY_LAYOUT, it expected the
payload to start at the second element of the iovec.

This can show up during migration.

Cc: qemu-stable@nongnu.org
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
(cherry picked from commit 55783a5521)
Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
2015-01-07 14:43:28 -06:00
..
Makefile.objs vhost-scsi: new device supporting the tcm_vhost Linux kernel module 2013-04-19 16:18:11 +02:00
esp-pci.c esp-pci: fixup deadlock with linux 2015-01-07 14:27:24 -06:00
esp.c savevm: Remove all the unneeded version_minimum_id_old (rest) 2014-05-14 15:24:51 +02:00
lsi53c895a.c savevm: Remove all the unneeded version_minimum_id_old (x86) 2014-06-16 04:55:26 +02:00
megasas.c megasas: use PCI DMA API 2014-06-18 08:47:10 +02:00
mfi.h megasas: Implement LD_LIST_QUERY 2014-04-28 13:48:41 +02:00
scsi-bus.c scsi: Report error when lun number is in use 2014-07-14 11:54:57 +02:00
scsi-disk.c qapi: adjust existing defines 2014-06-23 11:01:25 -04:00
scsi-generic.c scsi: Improve error messages more 2014-04-28 13:38:00 +02:00
spapr_vscsi.c scsi: Print command name in debug 2014-06-18 08:47:10 +02:00
srp.h spapr-vscsi: add task management 2013-09-12 08:46:21 +02:00
vhost-scsi.c vhost-scsi: use virtio_ldl_p 2015-01-06 16:00:06 -06:00
viosrp.h hw: move private headers to hw/ subdirectories. 2013-04-08 18:13:16 +02:00
virtio-scsi.c virtio-scsi: work around bug in old BIOSes 2015-01-07 14:43:28 -06:00
vmw_pvscsi.c savevm: Remove all the unneeded version_minimum_id_old (x86) 2014-06-16 04:55:26 +02:00
vmw_pvscsi.h scsi: VMWare PVSCSI paravirtual device implementation 2013-04-19 10:44:17 +02:00