drm/nouveau: fix reference count leak in nv50_disp_atomic_commit
nv50_disp_atomic_commit() calls calls pm_runtime_get_sync and in turn increments the reference count. In case of failure, decrement the ref count before returning the error. Signed-off-by: Aditya Pakki <pakki001@umn.edu> Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
This commit is contained in:
@@ -2171,8 +2171,10 @@ nv50_disp_atomic_commit(struct drm_device *dev,
|
|||||||
int ret, i;
|
int ret, i;
|
||||||
|
|
||||||
ret = pm_runtime_get_sync(dev->dev);
|
ret = pm_runtime_get_sync(dev->dev);
|
||||||
if (ret < 0 && ret != -EACCES)
|
if (ret < 0 && ret != -EACCES) {
|
||||||
|
pm_runtime_put_autosuspend(dev->dev);
|
||||||
return ret;
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
ret = drm_atomic_helper_setup_commit(state, nonblock);
|
ret = drm_atomic_helper_setup_commit(state, nonblock);
|
||||||
if (ret)
|
if (ret)
|
||||||
|
Reference in New Issue
Block a user