|
@@ -491,6 +491,7 @@ static void vfio_ccw_get_region(VFIOCCWDevice *vcdev, Error **errp)
|
|
|
|
|
|
vcdev->io_region_offset = info->offset;
|
|
|
vcdev->io_region = g_malloc0(info->size);
|
|
|
+ g_free(info);
|
|
|
|
|
|
/* check for the optional async command region */
|
|
|
ret = vfio_get_dev_region_info(vdev, VFIO_REGION_TYPE_CCW,
|
|
@@ -503,6 +504,7 @@ static void vfio_ccw_get_region(VFIOCCWDevice *vcdev, Error **errp)
|
|
|
}
|
|
|
vcdev->async_cmd_region_offset = info->offset;
|
|
|
vcdev->async_cmd_region = g_malloc0(info->size);
|
|
|
+ g_free(info);
|
|
|
}
|
|
|
|
|
|
ret = vfio_get_dev_region_info(vdev, VFIO_REGION_TYPE_CCW,
|
|
@@ -515,6 +517,7 @@ static void vfio_ccw_get_region(VFIOCCWDevice *vcdev, Error **errp)
|
|
|
}
|
|
|
vcdev->schib_region_offset = info->offset;
|
|
|
vcdev->schib_region = g_malloc(info->size);
|
|
|
+ g_free(info);
|
|
|
}
|
|
|
|
|
|
ret = vfio_get_dev_region_info(vdev, VFIO_REGION_TYPE_CCW,
|
|
@@ -528,9 +531,9 @@ static void vfio_ccw_get_region(VFIOCCWDevice *vcdev, Error **errp)
|
|
|
}
|
|
|
vcdev->crw_region_offset = info->offset;
|
|
|
vcdev->crw_region = g_malloc(info->size);
|
|
|
+ g_free(info);
|
|
|
}
|
|
|
|
|
|
- g_free(info);
|
|
|
return;
|
|
|
|
|
|
out_err:
|