On 21.01.20 10:55, Cornelia Huck wrote:
> We currently check (by error) if the passed-in Error pointer errp
> is non-null and return after realizing the first child of the
> event facility in that case. Symptom is that 'virsh shutdown'
> does not work, as the sclpquiesce device is not realized.
>
> Fix this by (correctly) checking the local Error err.
>
> Reported-by: Christian Borntraeger <borntrae...@de.ibm.com>
> Fixes: 3d508334dd2c ("s390x/event-facility: Fix realize() error API
> violations")
> Signed-off-by: Cornelia Huck <coh...@redhat.com>
Tested-by: Christian Borntraeger <borntrae...@de.ibm.com>
> ---
> hw/s390x/event-facility.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/hw/s390x/event-facility.c b/hw/s390x/event-facility.c
> index 8a93b8a1da97..9d6972afa8b3 100644
> --- a/hw/s390x/event-facility.c
> +++ b/hw/s390x/event-facility.c
> @@ -338,7 +338,7 @@ static void sclp_events_bus_realize(BusState *bus, Error
> **errp)
> DeviceState *dev = kid->child;
>
> object_property_set_bool(OBJECT(dev), true, "realized", &err);
> - if (errp) {
> + if (err) {
> error_propagate(errp, err);
> return;
> }
>