From: Qiushi Wu <wu000273@xxxxxxx> Calling pm_runtime_get_sync increments the counter even in case of failure, causing incorrect ref count if pm_runtime_put_sync is not called in error handling paths. Thus replace the jump target "error_pm_runtime_get" by "err_clocks". Fixes: 02afa816dbbf ("media: camss: Add basic runtime PM support") Signed-off-by: Qiushi Wu <wu000273@xxxxxxx> --- drivers/media/platform/qcom/camss/camss-vfe.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/drivers/media/platform/qcom/camss/camss-vfe.c b/drivers/media/platform/qcom/camss/camss-vfe.c index a8c542fa647d..1e7f23538af6 100644 --- a/drivers/media/platform/qcom/camss/camss-vfe.c +++ b/drivers/media/platform/qcom/camss/camss-vfe.c @@ -1261,7 +1261,7 @@ static int vfe_get(struct vfe_device *vfe) ret = pm_runtime_get_sync(vfe->camss->dev); if (ret < 0) - goto error_pm_runtime_get; + goto error_clocks; ret = vfe_set_clock_rates(vfe); if (ret < 0) @@ -1295,8 +1295,6 @@ static int vfe_get(struct vfe_device *vfe) error_clocks: pm_runtime_put_sync(vfe->camss->dev); - -error_pm_runtime_get: camss_pm_domain_off(vfe->camss, vfe->id); error_pm_domain: -- 2.17.1