summaryrefslogtreecommitdiff
path: root/drivers/vfio
diff options
context:
space:
mode:
authorSinan Kaya <okaya@codeaurora.org>2016-07-19 09:01:45 -0400
committerAlex Williamson <alex.williamson@redhat.com>2016-07-19 10:26:43 -0600
commit5afec27474fdc52e9d80b359ce10fab59c85d131 (patch)
treec9e3d84251b8a56bf54f8e3c6eedeb2b0b7d8617 /drivers/vfio
parenta12a9368e192d56175e49d69360d861025a0f6f7 (diff)
downloadlwn-5afec27474fdc52e9d80b359ce10fab59c85d131.tar.gz
lwn-5afec27474fdc52e9d80b359ce10fab59c85d131.zip
vfio: platform: add extra debug info argument to call reset
Getting ready to bring out extra debug information to the caller so that more verbose information can be printed when an error is observed. Signed-off-by: Sinan Kaya <okaya@codeaurora.org> Reviewed-by: Baptiste Reynal <b.reynal@virtualopensystems.com> Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
Diffstat (limited to 'drivers/vfio')
-rw-r--r--drivers/vfio/platform/vfio_platform_common.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/drivers/vfio/platform/vfio_platform_common.c b/drivers/vfio/platform/vfio_platform_common.c
index 716f421d1b01..a9760c2e68ad 100644
--- a/drivers/vfio/platform/vfio_platform_common.c
+++ b/drivers/vfio/platform/vfio_platform_common.c
@@ -161,7 +161,8 @@ static void vfio_platform_regions_cleanup(struct vfio_platform_device *vdev)
kfree(vdev->regions);
}
-static int vfio_platform_call_reset(struct vfio_platform_device *vdev)
+static int vfio_platform_call_reset(struct vfio_platform_device *vdev,
+ const char **extra_dbg)
{
if (vdev->of_reset) {
dev_info(vdev->device, "reset\n");
@@ -179,7 +180,7 @@ static void vfio_platform_release(void *device_data)
mutex_lock(&driver_lock);
if (!(--vdev->refcnt)) {
- vfio_platform_call_reset(vdev);
+ vfio_platform_call_reset(vdev, NULL);
vfio_platform_regions_cleanup(vdev);
vfio_platform_irq_cleanup(vdev);
}
@@ -208,7 +209,7 @@ static int vfio_platform_open(void *device_data)
if (ret)
goto err_irq;
- vfio_platform_call_reset(vdev);
+ vfio_platform_call_reset(vdev, NULL);
}
vdev->refcnt++;
@@ -340,7 +341,7 @@ static long vfio_platform_ioctl(void *device_data,
return ret;
} else if (cmd == VFIO_DEVICE_RESET) {
- return vfio_platform_call_reset(vdev);
+ return vfio_platform_call_reset(vdev, NULL);
}
return -ENOTTY;