On 5/22/24 1:01 PM, Cédric Le Goater wrote:
> The local error variable is kept for vfio_ccw_register_irq_notifier()
> because it is not considered as a failing condition. We will change
> how error reporting is done in following changes.
>
> Remove the error_propagate() call.
>
> Cc: Zhenzhong Duan <zhenzhong.duan@intel.com>
> Signed-off-by: Cédric Le Goater <clg@redhat.com>
Reviewed-by: Anthony Krowiak <akrowiak@linux.ibm.com>
> ---
> hw/vfio/ccw.c | 12 +++++-------
> 1 file changed, 5 insertions(+), 7 deletions(-)
>
> diff --git a/hw/vfio/ccw.c b/hw/vfio/ccw.c
> index 9a8e052711fe2f7c067c52808b2af30d0ebfee0c..a468fa2342b97e0ee36bd5fb8443025cc90a0453 100644
> --- a/hw/vfio/ccw.c
> +++ b/hw/vfio/ccw.c
> @@ -582,8 +582,8 @@ static void vfio_ccw_realize(DeviceState *dev, Error **errp)
>
> /* Call the class init function for subchannel. */
> if (cdc->realize) {
> - if (!cdc->realize(cdev, vcdev->vdev.sysfsdev, &err)) {
> - goto out_err_propagate;
> + if (!cdc->realize(cdev, vcdev->vdev.sysfsdev, errp)) {
> + return;
> }
> }
>
> @@ -596,17 +596,17 @@ static void vfio_ccw_realize(DeviceState *dev, Error **errp)
> goto out_attach_dev_err;
> }
>
> - if (!vfio_ccw_get_region(vcdev, &err)) {
> + if (!vfio_ccw_get_region(vcdev, errp)) {
> goto out_region_err;
> }
>
> - if (!vfio_ccw_register_irq_notifier(vcdev, VFIO_CCW_IO_IRQ_INDEX, &err)) {
> + if (!vfio_ccw_register_irq_notifier(vcdev, VFIO_CCW_IO_IRQ_INDEX, errp)) {
> goto out_io_notifier_err;
> }
>
> if (vcdev->crw_region) {
> if (!vfio_ccw_register_irq_notifier(vcdev, VFIO_CCW_CRW_IRQ_INDEX,
> - &err)) {
> + errp)) {
> goto out_irq_notifier_err;
> }
> }
> @@ -634,8 +634,6 @@ out_attach_dev_err:
> if (cdc->unrealize) {
> cdc->unrealize(cdev);
> }
> -out_err_propagate:
> - error_propagate(errp, err);
> }
>
> static void vfio_ccw_unrealize(DeviceState *dev)