Commit 990a1162 authored by Aditya Pakki's avatar Aditya Pakki Committed by Ben Skeggs

drm/nouveau: Fix reference count leak in nouveau_connector_detect

nouveau_connector_detect() 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: default avatarAditya Pakki <pakki001@umn.edu>
Signed-off-by: default avatarBen Skeggs <bskeggs@redhat.com>
parent a2cdf395
...@@ -571,9 +571,11 @@ nouveau_connector_detect(struct drm_connector *connector, bool force) ...@@ -571,9 +571,11 @@ nouveau_connector_detect(struct drm_connector *connector, bool force)
pm_runtime_get_noresume(dev->dev); pm_runtime_get_noresume(dev->dev);
} else { } else {
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 conn_status; return conn_status;
} }
}
nv_encoder = nouveau_connector_ddc_detect(connector); nv_encoder = nouveau_connector_ddc_detect(connector);
if (nv_encoder && (i2c = nv_encoder->i2c) != NULL) { if (nv_encoder && (i2c = nv_encoder->i2c) != NULL) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment