diff options
| author | Markus Armbruster <armbru@redhat.com> | 2020-06-10 07:32:42 +0200 |
|---|---|---|
| committer | Markus Armbruster <armbru@redhat.com> | 2020-06-15 22:06:04 +0200 |
| commit | 1afec9e8ea46f8e54d0ca73b7a58f27af5edc7da (patch) | |
| tree | ab485d2ede14297abace168bd63afa2112452b61 /hw/arm/xlnx-versal.c | |
| parent | e9a82986c27a1d721d983e4112f8b971374a4e21 (diff) | |
| download | focaccia-qemu-1afec9e8ea46f8e54d0ca73b7a58f27af5edc7da.tar.gz focaccia-qemu-1afec9e8ea46f8e54d0ca73b7a58f27af5edc7da.zip | |
s390x/event-facility: Simplify creation of SCLP event devices
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>
Diffstat (limited to 'hw/arm/xlnx-versal.c')
0 files changed, 0 insertions, 0 deletions