Message ID | 20200520120751.3533-1-dinghao.liu@zju.edu.cn (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | drm/v3d: fix runtime pm imbalance on error | expand |
diff --git a/drivers/gpu/drm/v3d/v3d_gem.c b/drivers/gpu/drm/v3d/v3d_gem.c index 549dde83408b..d53c683ed74c 100644 --- a/drivers/gpu/drm/v3d/v3d_gem.c +++ b/drivers/gpu/drm/v3d/v3d_gem.c @@ -440,8 +440,10 @@ v3d_job_init(struct v3d_dev *v3d, struct drm_file *file_priv, job->free = free; ret = pm_runtime_get_sync(v3d->dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_autosuspend(v3d->dev); return ret; + } xa_init_flags(&job->deps, XA_FLAGS_ALLOC);
pm_runtime_get_sync() increments the runtime PM usage counter even the call returns an error code. Thus a pairing decrement is needed on the error handling path to keep the counter balanced. Signed-off-by: Dinghao Liu <dinghao.liu@zju.edu.cn> --- drivers/gpu/drm/v3d/v3d_gem.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-)