qemu-e2k/hw
Peter Maydell 4a5fc890b1 scsi: Use device_cold_reset() and bus_cold_reset()
In the SCSI subsystem we currently use the legacy functions
qdev_reset_all() and qbus_reset_all().  These perform a recursive
reset, starting from either a qbus or a qdev.  However they do not
permit any of the devices in the tree to use three-phase reset,
because device reset goes through the device_legacy_reset() function
that only calls the single DeviceClass::reset method.

Switch to using the device_cold_reset() and bus_cold_reset()
functions.  These also perform a recursive reset, where first the
children are reset and then finally the parent, but they use the new
(...in 2020...) Resettable mechanism, which supports both the old
style single-reset method and also the new 3-phase reset handling.

Since no devices attached to SCSI buses currently try to use 3-phase
reset, this should be a no-behaviour-change commit which just reduces
the use of a deprecated API.

Commit created with:
  sed -i -e 's/qdev_reset_all/device_cold_reset/g;s/qbus_reset_all/bus_cold_reset/g' hw/scsi/*.c

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Message-Id: <20221013160623.1296109-2-peter.maydell@linaro.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2022-10-18 13:58:04 +02:00
..
9pfs 9p: add missing coroutine_fn annotations 2022-10-07 12:11:41 +02:00
acpi hw/acpi: Add ospm_status hook implementation for acpi-ged 2022-09-22 16:38:28 +01:00
adc
alpha
arm pc,virtio: features, tests, fixes, cleanups 2022-10-12 16:00:15 -04:00
audio
avr
block vhost-user-blk: dynamically resize config space based on features 2022-10-07 09:41:51 -04:00
char serial: Allow unaligned i/o access 2022-09-29 14:38:05 +04:00
core include/hw/core: Create struct CPUJumpCache 2022-10-04 12:13:12 -07:00
cpu
cris
cxl hw/cxl: Correctly handle variable sized mailbox input payloads. 2022-08-17 13:08:11 -04:00
display cirrus_vga: fix potential memory overflow 2022-10-12 11:00:55 +02:00
dma
gpio
hppa
hyperv
i2c
i386 x86: pci: acpi: consolidate PCI slots creation 2022-10-09 16:38:46 -04:00
ide hw/ide/core.c: Implement ATA INITIALIZE_DEVICE_PARAMETERS command 2022-09-30 18:43:44 +02:00
input
intc hw/intc/xics: Avoid dynamic stack allocation 2022-09-22 16:38:28 +01:00
ipack
ipmi
isa
loongarch hw/loongarch: Improve acpi dsdt table 2022-09-20 15:44:25 +08:00
m68k m68k: align bootinfo strings and data to 4 bytes 2022-09-26 23:37:22 +02:00
mem mem/cxl-type3: Add sn option to provide serial number for PCI ecap 2022-10-09 16:38:45 -04:00
microblaze hw/microblaze: pass random seed to fdt 2022-09-21 19:59:56 +02:00
mips hw/mips/malta: turn off x86 specific features of PIIX4_PM 2022-08-08 23:23:11 +02:00
misc monitor: expose monitor_puts to rest of code 2022-10-06 11:53:40 +01:00
net virtio: introduce VirtIOConfigSizeParams & virtio_get_config_size 2022-10-07 09:41:51 -04:00
nios2
nubus
nvme
nvram x86: return modified setup_data only if read as memory, not as file 2022-09-27 11:30:59 +02:00
openrisc hw/openrisc: virt: pass random seed to fdt 2022-09-04 07:02:57 +01:00
pci
pci-bridge
pci-host hw/pci-host: pnv_phb{3, 4}: Fix heap out-of-bound access failure 2022-09-20 12:31:53 -03:00
pcmcia
ppc hw/ppc/pnv: Avoid dynamic stack allocation 2022-09-22 16:38:28 +01:00
rdma
remote Use g_new() & friends where that makes obvious sense 2022-10-04 00:10:11 +02:00
riscv hw/riscv: opentitan: Expose the resetvec as a SoC property 2022-09-27 07:04:38 +10:00
rtc goldfish_rtc: Add big-endian property 2022-09-04 07:02:56 +01:00
rx
s390x s390x/s390-virtio-ccw: add zpcii-disable machine property 2022-09-26 17:23:47 +02:00
scsi scsi: Use device_cold_reset() and bus_cold_reset() 2022-10-18 13:58:04 +02:00
sd
sensor
sh4
smbios hw/smbios: support for type 8 (port connector) 2022-10-09 16:38:45 -04:00
sparc
sparc64
ssi hw/ssi: ibex_spi: update reg addr 2022-09-27 07:04:38 +10:00
timer hw/intc: Move mtimer/mtimecmp to aclint 2022-09-07 09:19:10 +02:00
tpm tpm_crb: Avoid backend startup just before shutdown under Xen 2022-09-09 17:55:59 -04:00
tricore
usb usb: make usbnet work with xhci. 2022-09-27 07:59:26 -04:00
vfio vfio/common: Fix vfio_iommu_type1_info use after free 2022-09-27 14:26:42 -06:00
virtio pci: cleanup virtio ids. 2022-10-13 13:55:53 -04:00
watchdog watchdog: remove -watchdog option 2022-09-29 11:40:28 +02:00
xen hw/xen: set pci Atomic Ops requests for passthrough device 2022-09-27 14:23:23 +01:00
xenpv
xtensa
Kconfig
meson.build