Markus Armbruster writes:
> David Hildenbrand writes:
>
+static void realize_event_facility(DeviceState *dev, Error **errp)
+{
+SCLPEventFacility *event_facility = EVENT_FACILITY(dev);
+Error *local_err = NULL;
+
+
On Tue, 26 May 2020 13:23:43 +0200
Paolo Bonzini wrote:
> On 26/05/20 11:45, Cornelia Huck wrote:
> > On Tue, 19 May 2020 16:55:46 +0200
> > Markus Armbruster wrote:
> >
> >> init_event_facility() creates the SCLP events bus with two SCLP event
> >> devices (sclpquiesce and
On 26/05/20 11:45, Cornelia Huck wrote:
> On Tue, 19 May 2020 16:55:46 +0200
> Markus Armbruster wrote:
>
>> 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
On 19.05.20 16:55, Markus Armbruster wrote:
> 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
On Tue, 19 May 2020 16:55:46 +0200
Markus Armbruster wrote:
> 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
Paolo Bonzini writes:
> On 26/05/20 08:27, Markus Armbruster wrote:
>>> It cannot happen, because a device must be unparented before it's
>>> destroyed and unparenting takes care of unrealizing the device.
>>
>> I can't see where unparenting takes care of unrealizing. Can you help
>> me?
>
>
On 26/05/20 08:27, Markus Armbruster wrote:
>> It cannot happen, because a device must be unparented before it's
>> destroyed and unparenting takes care of unrealizing the device.
>
> I can't see where unparenting takes care of unrealizing. Can you help
> me?
Hidden in plain sight:
static void
Paolo Bonzini writes:
> On 25/05/20 09:01, Markus Armbruster wrote:
>>> Just remembered that we fail creating the machine and therefore abort. So
>>> not necessary :)
>> True.
>>
>> But let's review briefly what happens when a realize method fails.
>>
>> In theory, realize fails cleanly, i.e.
On 25/05/20 09:01, Markus Armbruster wrote:
>> Just remembered that we fail creating the machine and therefore abort. So
>> not necessary :)
> True.
>
> But let's review briefly what happens when a realize method fails.
>
> In theory, realize fails cleanly, i.e. doing nothing. Another attempt
David Hildenbrand writes:
>>> +static void realize_event_facility(DeviceState *dev, Error **errp)
>>> +{
>>> +SCLPEventFacility *event_facility = EVENT_FACILITY(dev);
>>> +Error *local_err = NULL;
>>> +
>>> +qdev_realize(DEVICE(_facility->quiesce),
>>> +
>> +static void realize_event_facility(DeviceState *dev, Error **errp)
>> +{
>> +SCLPEventFacility *event_facility = EVENT_FACILITY(dev);
>> +Error *local_err = NULL;
>> +
>> +qdev_realize(DEVICE(_facility->quiesce),
>> + BUS(_facility->sbus), _err);
>> +if
[...]
> 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:
>
> *
12 matches
Mail list logo