qemu-e2k/hw/scsi
Sven Schnelle a9198b3132 hw/scsi/lsi53c895a: stop script on phase mismatch
Netbsd isn't happy with qemu lsi53c895a emulation:

cd0(esiop0:0:2:0): command with tag id 0 reset
esiop0: autoconfiguration error: phase mismatch without command
esiop0: autoconfiguration error: unhandled scsi interrupt, sist=0x80 sstat1=0x0 DSA=0x23a64b1 DSP=0x50

This is because lsi_bad_phase() triggers a phase mismatch, which
stops SCRIPT processing. However, after returning to
lsi_command_complete(), SCRIPT is restarted with lsi_resume_script().
Fix this by adding a return value to lsi_bad_phase(), and only resume
script processing when lsi_bad_phase() didn't trigger a host interrupt.

Signed-off-by: Sven Schnelle <svens@stackframe.org>
Tested-by: Helge Deller <deller@gmx.de>
Message-ID: <20240302214453.2071388-1-svens@stackframe.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2024-03-08 15:51:21 +01:00
..
emulation.c
esp-pci.c hw/scsi/esp-pci: set DMA_STAT_BCMBLT when BLAST command issued 2024-01-19 12:28:59 +01:00
esp.c esp.c: add my copyright to the file 2024-02-13 19:37:28 +00:00
Kconfig
lsi53c895a.c hw/scsi/lsi53c895a: stop script on phase mismatch 2024-03-08 15:51:21 +01:00
megasas.c
meson.build
mfi.h
mpi.h
mptconfig.c
mptendian.c
mptsas.c
mptsas.h
scsi-bus.c scsi: Don't ignore most usb-storage properties 2024-02-07 15:25:13 +01:00
scsi-disk.c
scsi-generic.c
spapr_vscsi.c
srp.h
trace-events hw/scsi/lsi53c895a: add timer to scripts processing 2024-03-08 15:51:21 +01:00
trace.h
vhost-scsi-common.c
vhost-scsi.c
vhost-user-scsi.c
viosrp.h
virtio-scsi-dataplane.c Rename "QEMU global mutex" to "BQL" in comments and docs 2024-01-08 10:45:43 -05:00
virtio-scsi.c virtio-scsi: Attach event vq notifier with no_poll 2024-02-07 21:50:32 +01:00
vmw_pvscsi.c
vmw_pvscsi.h