[PATCH] drm/vc4: fix ref count leak in vc4_v3d_pm_get

Navid Emamdoost navid.emamdoost at gmail.com
Sun Jun 14 06:56:11 UTC 2020


in vc4_v3d_pm_get, the call to pm_runtime_get_sync increments the
counter even in case of failure, leading to incorrect
ref count. In case of failure, decrement the ref count before returning.

Signed-off-by: Navid Emamdoost <navid.emamdoost at gmail.com>
---
 drivers/gpu/drm/vc4/vc4_v3d.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/gpu/drm/vc4/vc4_v3d.c b/drivers/gpu/drm/vc4/vc4_v3d.c
index cea77a21b205..bb03c1d1bb4d 100644
--- a/drivers/gpu/drm/vc4/vc4_v3d.c
+++ b/drivers/gpu/drm/vc4/vc4_v3d.c
@@ -135,6 +135,7 @@ vc4_v3d_pm_get(struct vc4_dev *vc4)
 
 		if (ret < 0) {
 			vc4->power_refcount--;
+			pm_runtime_put(&vc4->v3d->pdev->dev);
 			mutex_unlock(&vc4->power_lock);
 			return ret;
 		}
-- 
2.17.1



More information about the dri-devel mailing list