qemu-patch-raspberry4/hw/scsi
Paolo Bonzini 75f19f8c30 megasas: do not call pci_dma_unmap after having freed the frame once
Commit 8cc4678 ("megasas: remove useless check for cmd->frame", 2016-07-17) was
wrong because I trusted Coverity too much.  It turns out that there _is_ a
path through which cmd->frame can become NULL.  After megasas_handle_frame's
switch (md->frame->header.frame_cmd), megasas_init_firmware can be called.
From there, megasas_reset_frames will call megasas_unmap_frame which resets
cmd->frame = NULL.

However, there is another bug to fix in there, because megasas_unmap_frame
is called again after setting the command status.  In this case QEMU should
not do anything, instead it calls pci_dma_unmap again.  Harmless, but
better fix it.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2016-11-28 15:11:17 +01:00
..
esp-pci.c include/qemu/osdep.h: Don't include qapi/error.h 2016-03-22 22:20:15 +01:00
esp.c scsi: esp: fix migration 2016-06-29 14:03:47 +02:00
lsi53c895a.c lsi: never set DMA FIFO Empty (DFE) bit in DSTAT register 2016-09-13 19:08:45 +02:00
Makefile.objs hw: Add support for LSI SAS1068 (mptsas) device 2016-02-09 15:45:26 +01:00
megasas.c megasas: do not call pci_dma_unmap after having freed the frame once 2016-11-28 15:11:17 +01:00
mfi.h Clean up header guards that don't match their file name 2016-07-12 16:19:16 +02:00
mpi.h hw: Add support for LSI SAS1068 (mptsas) device 2016-02-09 15:45:26 +01:00
mptconfig.c scsi: mptconfig: fix misuse of MPTSAS_CONFIG_PACK 2016-09-13 19:08:46 +02:00
mptendian.c hw: Add support for LSI SAS1068 (mptsas) device 2016-02-09 15:45:26 +01:00
mptsas.c * Support multiple -d trace:PATTERN arguments (Daniel) 2016-09-15 18:12:40 +01:00
mptsas.h mptsas: really fix migration compatibility 2016-08-03 18:44:56 +02:00
scsi-bus.c scsi-bus: Use longer sense buffer with scanners 2016-07-12 18:31:26 +02:00
scsi-disk.c dma-helpers: explicitly pass alignment into DMA helpers 2016-10-27 16:29:13 -04:00
scsi-generic.c block: Switch transfer length bounds to byte-based 2016-07-05 16:46:25 +02:00
spapr_vscsi.c spapr_vscsi: fix build error introduced by f19661c8 2016-10-05 11:05:28 +11:00
srp.h spapr-vscsi: add task management 2013-09-12 08:46:21 +02:00
trace-events spapr_vscsi: fix build error introduced by f19661c8 2016-10-05 11:05:28 +11:00
vhost-scsi.c Use #include "..." for our own headers, <...> for others 2016-07-12 16:19:16 +02:00
viosrp.h hw: move private headers to hw/ subdirectories. 2013-04-08 18:13:16 +02:00
virtio-scsi-dataplane.c virtio: set ISR on dataplane notifications 2016-11-18 17:29:25 +02:00
virtio-scsi.c virtio: set ISR on dataplane notifications 2016-11-18 17:29:25 +02:00
vmw_pvscsi.c scsi: pvscsi: limit process IO loop to ring size 2016-09-14 12:25:14 +02:00
vmw_pvscsi.h scsi: VMWare PVSCSI paravirtual device implementation 2013-04-19 10:44:17 +02:00