From: Uwe Kleine-König <u.kleine-koe...@pengutronix.de>

vfio_platform_remove_common() cannot return non-NULL in
vfio_amba_remove() as the latter is only called if vfio_amba_probe()
returned success.

Diagnosed-by: Arnd Bergmann <a...@arndb.de>
Signed-off-by: Uwe Kleine-König <u.kleine-koe...@pengutronix.de>
---
 drivers/vfio/platform/vfio_amba.c | 14 +++++---------
 1 file changed, 5 insertions(+), 9 deletions(-)

diff --git a/drivers/vfio/platform/vfio_amba.c 
b/drivers/vfio/platform/vfio_amba.c
index 9636a2afaecd..7b3ebf1558e1 100644
--- a/drivers/vfio/platform/vfio_amba.c
+++ b/drivers/vfio/platform/vfio_amba.c
@@ -73,16 +73,12 @@ static int vfio_amba_probe(struct amba_device *adev, const 
struct amba_id *id)
 
 static int vfio_amba_remove(struct amba_device *adev)
 {
-       struct vfio_platform_device *vdev;
-
-       vdev = vfio_platform_remove_common(&adev->dev);
-       if (vdev) {
-               kfree(vdev->name);
-               kfree(vdev);
-               return 0;
-       }
+       struct vfio_platform_device *vdev =
+               vfio_platform_remove_common(&adev->dev);
 
-       return -EINVAL;
+       kfree(vdev->name);
+       kfree(vdev);
+       return 0;
 }
 
 static const struct amba_id pl330_ids[] = {
-- 
2.29.2

Reply via email to