qemu-e2k/hw/s390x
Thomas Huth 2fb40d1b94 hw/s390x/s390-skeys: Don't call register_savevm_live() during instance_init()
Since the instance_init() function immediately tries to set the
property to "true", the s390_skeys_set_migration_enabled() tries
to register a savevm handler during instance_init(). However,
instance_init() functions can be called multiple times, e.g. for
introspection of devices. That means multiple instances of devices
can be created during runtime (which is fine as long as they all
don't get realized, too), so the "Prevent double registration of
savevm handler" check in the s390_skeys_set_migration_enabled()
function does not work at all as expected (since there could be
more than one instance).

Thus we must not call register_savevm_live() from an instance_init()
function at all. Move this to the realize() function instead. This
way we can also get rid of the property getter and setter functions
completely, simplifying the code along the way quite a bit.

Acked-by: David Hildenbrand <david@redhat.com>
Reviewed-by: Eric Farman <farman@linux.ibm.com>
Acked-by: Juan Quintela <quintela@redhat.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
Signed-off-by: Juan Quintela <quintela@redhat.com>
Message-ID: <20231020150554.664422-2-thuth@redhat.com>
2023-11-01 16:13:58 +01:00
..
3270-ccw.c
ap-bridge.c
ap-device.c
ccw-device.c
ccw-device.h
cpu-topology.c qapi/s390x/cpu topology: add query-s390x-cpu-polarization command 2023-10-20 07:16:53 +02:00
css-bridge.c hw/s390x/css-bridge: Realize sysbus device before accessing it 2023-10-19 23:13:28 +02:00
css.c s390x/css: revert SCSW ctrl/flag bits on error 2022-11-06 12:27:35 +01:00
event-facility.c hw/s390x/event-facility: Replace DO_UPCAST(SCLPEvent) by SCLP_EVENT() 2023-02-14 09:11:27 +01:00
ipl.c hw/s390x: Move KVM specific PV from hw/ to target/s390x/kvm/ 2023-07-10 15:34:23 +02:00
ipl.h s390x: Fix spelling errors 2022-11-16 10:15:26 +01:00
Kconfig s390x: Fix QEMU abort by selecting S390_FLIC_KVM 2023-07-18 09:36:27 +02:00
meson.build s390x/cpu topology: add topology entries on CPU hotplug 2023-10-20 07:16:53 +02:00
s390-ccw.c
s390-pci-bus.c s390x: Convert DPRINTF to trace events 2023-08-23 12:06:44 +02:00
s390-pci-inst.c s390x: Convert DPRINTF to trace events 2023-08-23 12:06:44 +02:00
s390-pci-kvm.c hw/s390x: Move KVM specific PV from hw/ to target/s390x/kvm/ 2023-07-10 15:34:23 +02:00
s390-pci-vfio.c vfio: Implement a common device info helper 2023-06-30 06:02:51 +02:00
s390-skeys-kvm.c
s390-skeys.c hw/s390x/s390-skeys: Don't call register_savevm_live() during instance_init() 2023-11-01 16:13:58 +01:00
s390-stattrib-kvm.c
s390-stattrib.c migration: Move rate_limit_max and rate_limit_used to migration_stats 2023-05-18 18:40:51 +02:00
s390-virtio-ccw.c Migration Pull request (20231020) 2023-10-20 06:46:53 -07:00
s390-virtio-hcall.c
s390-virtio-hcall.h
sclp.c s390x/sclp: reporting the maximum nested topology entries 2023-10-20 07:16:53 +02:00
sclpcpu.c
sclpquiesce.c hw/s390x: Clean up global variable shadowing in quiesce_powerdown_req() 2023-10-19 23:13:28 +02:00
tod-kvm.c hw/s390x: Move KVM specific PV from hw/ to target/s390x/kvm/ 2023-07-10 15:34:23 +02:00
tod-tcg.c
tod.c
trace-events s390x: Convert DPRINTF to trace events 2023-08-23 12:06:44 +02:00
trace.h
vhost-scsi-ccw.c
vhost-user-fs-ccw.c
vhost-vsock-ccw.c
virtio-ccw-9p.c
virtio-ccw-balloon.c
virtio-ccw-blk.c
virtio-ccw-crypto.c
virtio-ccw-gpu.c
virtio-ccw-input.c
virtio-ccw-net.c
virtio-ccw-rng.c
virtio-ccw-scsi.c
virtio-ccw-serial.c Drop duplicate #include 2023-02-08 07:28:05 +01:00
virtio-ccw.c kvm: require KVM_CAP_IOEVENTFD and KVM_CAP_IOEVENTFD_ANY_LENGTH 2023-10-25 17:35:15 +02:00
virtio-ccw.h