qemu/hw/s390x
David Hildenbrand 2313a88fe6 s390x/pci: Unplug remaining requested devices on pcihost reset
When resetting the guest we should unplug and remove all devices that
are still pending.

With this patch, the requested device will be unplugged on reboot
(S390_RESET_EXTERNAL and S390_RESET_REIPL, which reset the pcihost bridge
via qemu_devices_reset()).

This approach is similar to what's done for acpi PCI hotplug in
acpi_pcihp_reset() -> acpi_pcihp_update() ->
acpi_pcihp_update_hotplug_bus() -> acpi_pcihp_eject_slot().

s390_pci_generate_plug_event()'s will still be generated, I guess this
is not an issue. The same thing would happen right now when unplugging
a device just before starting the guest.

Signed-off-by: David Hildenbrand <david@redhat.com>
Message-Id: <20190130155733.32742-7-david@redhat.com>
Reviewed-by: Collin Walling <walling@linux.ibm.com>
Signed-off-by: Cornelia Huck <cohuck@redhat.com>
2019-02-05 10:34:06 +01:00
..
3270-ccw.c s390x: remove 's390-squash-mcss' option 2018-08-20 14:18:49 +02:00
ap-bridge.c s390x/ap: base Adjunct Processor (AP) object model 2018-10-12 11:32:18 +02:00
ap-device.c s390x/ap: base Adjunct Processor (AP) object model 2018-10-12 11:32:18 +02:00
ccw-device.c s390x/ccw: make sure all ccw devices are properly reset 2018-05-14 17:10:02 +02:00
ccw-device.h s390x: vmstatify config migration for virtio-ccw 2017-07-05 12:16:55 +02:00
css-bridge.c s390x: remove 's390-squash-mcss' option 2018-08-20 14:18:49 +02:00
css.c hw/s390/ccw.c: Don't take address of packed members 2018-12-20 17:07:24 +01:00
event-facility.c hw/s390x: Allow to configure the consoles with the "-serial" parameter 2018-04-30 10:48:29 +02:00
ipl.c loader: Check access size when calling rom_ptr() to avoid crashes 2018-07-02 10:37:38 +02:00
ipl.h hw/s390x/ipl: Fix alignment problems of S390IPLState members 2018-10-04 10:32:38 +02:00
Makefile.objs hw/s390x: Include the tod-qemu also for builds with --disable-tcg 2018-10-12 11:32:19 +02:00
s390-ccw.c s390x: remove 's390-squash-mcss' option 2018-08-20 14:18:49 +02:00
s390-pci-bus.c s390x/pci: Unplug remaining requested devices on pcihost reset 2019-02-05 10:34:06 +01:00
s390-pci-bus.h s390x/pci: Drop release timer and replace it with a flag 2019-02-04 13:47:50 +01:00
s390-pci-inst.c s390x/pci: add common function measurement block 2019-01-18 11:52:01 +01:00
s390-pci-inst.h s390x/pci: add common function measurement block 2019-01-18 11:52:01 +01:00
s390-pci-stub.c s390x/pci: remove idx from msix msg data 2017-09-19 18:21:32 +02:00
s390-skeys-kvm.c s390x/s390-skeys: Mark the storage key devices with user_creatable = false 2017-08-30 18:23:25 +02:00
s390-skeys.c hw/s390x: Use the IEC binary prefix definitions 2018-07-02 15:41:14 +02:00
s390-stattrib-kvm.c s390x/storage attributes: fix CMMA_BLOCK_SIZE usage 2018-07-11 14:36:54 +02:00
s390-stattrib.c s390x/storage attributes: fix CMMA_BLOCK_SIZE usage 2018-07-11 14:36:54 +02:00
s390-virtio-ccw.c machine: Use shorter format for GlobalProperty arrays 2019-01-09 22:10:00 -02:00
s390-virtio-hcall.c s390x: rename s390-virtio.h to s390-virtio-hcall.h 2017-09-19 18:31:31 +02:00
s390-virtio-hcall.h s390/kvm_virtio/linux-headers: remove traces of old virtio transport 2017-11-24 10:52:05 +01:00
sclp.c s390x/sclp: fix maxram calculation 2018-07-30 17:41:52 +02:00
sclpcpu.c s390x/sclp: clean up sclp masks 2018-03-08 15:49:23 +01:00
sclpquiesce.c s390x/sclp: clean up sclp masks 2018-03-08 15:49:23 +01:00
tod-kvm.c s390x/tod: Properly stop the KVM TOD while the guest is not running 2018-12-12 10:39:28 +01:00
tod-qemu.c s390x/tcg: properly implement the TOD 2018-07-02 10:37:38 +02:00
tod.c s390x/tcg: properly implement the TOD 2018-07-02 10:37:38 +02:00
trace-events trace-events: fix code style: print 0x before hex numbers 2017-08-01 12:13:07 +01:00
vhost-vsock-ccw.c hw/s390x: Move vhost-vsock-ccw code to a separate file 2018-08-28 17:37:01 +02:00
virtio-ccw-9p.c hw/s390x: Move virtio-ccw-9p code to a separate file 2018-08-28 17:37:01 +02:00
virtio-ccw-balloon.c hw/s390x: Move virtio-ccw-balloon code to a separate file 2018-08-28 17:37:01 +02:00
virtio-ccw-blk.c hw/s390x: Move virtio-ccw-blk code to a separate file 2018-08-28 17:37:01 +02:00
virtio-ccw-crypto.c hw/s390x: Move virtio-ccw-crypto code to a separate file 2018-08-28 17:37:01 +02:00
virtio-ccw-gpu.c hw/s390x: Move virtio-ccw-gpu code to a separate file 2018-08-28 17:37:01 +02:00
virtio-ccw-input.c hw/s390x: Move virtio-ccw-input code to a separate file 2018-08-28 17:37:01 +02:00
virtio-ccw-net.c hw/s390x: Move virtio-ccw-net code to a separate file 2018-08-28 17:37:01 +02:00
virtio-ccw-rng.c hw/s390x: Move virtio-ccw-rng code to a separate file 2018-08-28 17:37:01 +02:00
virtio-ccw-scsi.c hw/s390x: Move virtio-ccw-scsi code to a separate file 2018-08-28 17:37:01 +02:00
virtio-ccw-serial.c hw/s390x: Move virtio-ccw-serial code to a separate file 2018-08-28 17:37:01 +02:00
virtio-ccw.c hw/s390x/virtio-ccw.c: Don't take address of fields in packed structs 2018-12-12 10:39:28 +01:00
virtio-ccw.h s390x/ccw: make sure all ccw devices are properly reset 2018-05-14 17:10:02 +02:00