qemu-s390x
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH 07/16] vfio/ccw: Make vfio_ccw_get_region() return a bool


From: Cédric Le Goater
Subject: Re: [PATCH 07/16] vfio/ccw: Make vfio_ccw_get_region() return a bool
Date: Tue, 21 May 2024 14:34:22 +0200
User-agent: Mozilla Thunderbird

On 5/15/24 10:20, Zhenzhong Duan wrote:
Since vfio_populate_device() takes an 'Error **' argument,
best practices suggest to return a bool. See the qapi/error.h
Rules section.

Signed-off-by: Zhenzhong Duan <zhenzhong.duan@intel.com>


Reviewed-by: Cédric Le Goater <clg@redhat.com>

One comment below

---
  hw/vfio/ccw.c | 15 +++++++--------
  1 file changed, 7 insertions(+), 8 deletions(-)

diff --git a/hw/vfio/ccw.c b/hw/vfio/ccw.c
index 8850ca17c8..2600e62e37 100644
--- a/hw/vfio/ccw.c
+++ b/hw/vfio/ccw.c
@@ -474,7 +474,7 @@ static void vfio_ccw_unregister_irq_notifier(VFIOCCWDevice 
*vcdev,
      event_notifier_cleanup(notifier);
  }
-static void vfio_ccw_get_region(VFIOCCWDevice *vcdev, Error **errp)
+static bool vfio_ccw_get_region(VFIOCCWDevice *vcdev, Error **errp)
  {
      VFIODevice *vdev = &vcdev->vdev;
      struct vfio_region_info *info;
@@ -483,7 +483,7 @@ static void vfio_ccw_get_region(VFIOCCWDevice *vcdev, Error 
**errp)
      /* Sanity check device */
      if (!(vdev->flags & VFIO_DEVICE_FLAGS_CCW)) {
          error_setg(errp, "vfio: Um, this isn't a vfio-ccw device");
-        return;
+        return false;
      }
/*
@@ -493,13 +493,13 @@ static void vfio_ccw_get_region(VFIOCCWDevice *vcdev, 
Error **errp)
      if (vdev->num_regions < VFIO_CCW_CONFIG_REGION_INDEX + 1) {
          error_setg(errp, "vfio: too few regions (%u), expected at least %u",
                     vdev->num_regions, VFIO_CCW_CONFIG_REGION_INDEX + 1);
-        return;
+        return false;
      }
ret = vfio_get_region_info(vdev, VFIO_CCW_CONFIG_REGION_INDEX, &info);
      if (ret) {
          error_setg_errno(errp, -ret, "vfio: Error getting config info");
-        return;
+        return false;
      }
vcdev->io_region_size = info->size;
@@ -553,7 +553,7 @@ static void vfio_ccw_get_region(VFIOCCWDevice *vcdev, Error 
**errp)
          g_free(info);
      }
- return;
+    return true;
out_err:
      g_free(vcdev->crw_region);
@@ -561,7 +561,7 @@ out_err:
      g_free(vcdev->async_cmd_region);
      g_free(vcdev->io_region);
      g_free(info);
-    return;
+    return false;
  }
static void vfio_ccw_put_region(VFIOCCWDevice *vcdev)
@@ -597,8 +597,7 @@ static void vfio_ccw_realize(DeviceState *dev, Error **errp)

vfio_ccw_realize() needs a little cleanup to avoid using the local
'Error *err' variable and the error_propagate() call at the end.

Thanks,

C.


          goto out_attach_dev_err;
      }
- vfio_ccw_get_region(vcdev, &err);
-    if (err) {
+    if (!vfio_ccw_get_region(vcdev, &err)) {
          goto out_region_err;
      }




reply via email to

[Prev in Thread] Current Thread [Next in Thread]