mirror of
https://github.com/xemu-project/xemu.git
synced 2024-12-03 17:11:01 +00:00
1afec9e8ea
init_event_facility() creates the SCLP events bus with two SCLP event devices (sclpquiesce and sclp-cpu-hotplug). It leaves the devices unrealized. A comment explains they will be realized "via the bus". The bus's realize method sclp_events_bus_realize() indeed realizes all unrealized devices on this bus. It carries a TODO comment claiming this "has to be done in common code". No other bus realize method realizes its devices. The common code in question is bus_set_realized(), which has a TODO comment asking for recursive realization. It's been asking for years. The only devices sclp_events_bus_realize() will ever realize are the two init_event_facility() puts there. Simplify as follows: * Make the devices members of the event facility instance struct, just like the bus. object_initialize_child() is simpler than object_property_add_child() and object_unref(). * Realize them in the event facility realize method. This is in line with how such things are done elsewhere. Cc: Cornelia Huck <cohuck@redhat.com> Cc: Halil Pasic <pasic@linux.ibm.com> Cc: Christian Borntraeger <borntraeger@de.ibm.com> Cc: Richard Henderson <rth@twiddle.net> Cc: David Hildenbrand <david@redhat.com> Cc: qemu-s390x@nongnu.org Signed-off-by: Markus Armbruster <armbru@redhat.com> Reviewed-by: David Hildenbrand <david@redhat.com> Acked-by: Cornelia Huck <cohuck@redhat.com> Reviewed-by: Paolo Bonzini <pbonzini@redhat.com> Message-Id: <20200610053247.1583243-54-armbru@redhat.com> |
||
---|---|---|
.. | ||
3270-ccw.c | ||
ap-bridge.c | ||
ap-device.c | ||
ccw-device.c | ||
ccw-device.h | ||
css-bridge.c | ||
css.c | ||
event-facility.c | ||
ipl.c | ||
ipl.h | ||
Kconfig | ||
Makefile.objs | ||
pv.c | ||
s390-ccw.c | ||
s390-pci-bus.c | ||
s390-pci-bus.h | ||
s390-pci-inst.c | ||
s390-pci-inst.h | ||
s390-skeys-kvm.c | ||
s390-skeys.c | ||
s390-stattrib-kvm.c | ||
s390-stattrib.c | ||
s390-virtio-ccw.c | ||
s390-virtio-hcall.c | ||
s390-virtio-hcall.h | ||
sclp.c | ||
sclpcpu.c | ||
sclpquiesce.c | ||
tod-kvm.c | ||
tod-qemu.c | ||
tod.c | ||
trace-events | ||
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 | ||
virtio-ccw.c | ||
virtio-ccw.h |