Commit 9ba8923c authored by Navid Emamdoost's avatar Navid Emamdoost Committed by Alex Deucher
Browse files

drm/amdgpu: fix ref count leak in amdgpu_driver_open_kms



in amdgpu_driver_open_kms 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: default avatarNavid Emamdoost <navid.emamdoost@gmail.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent 6f2e8acd
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -992,7 +992,7 @@ int amdgpu_driver_open_kms(struct drm_device *dev, struct drm_file *file_priv)

	r = pm_runtime_get_sync(dev->dev);
	if (r < 0)
		return r;
		goto pm_put;

	fpriv = kzalloc(sizeof(*fpriv), GFP_KERNEL);
	if (unlikely(!fpriv)) {
@@ -1043,6 +1043,7 @@ error_pasid:

out_suspend:
	pm_runtime_mark_last_busy(dev->dev);
pm_put:
	pm_runtime_put_autosuspend(dev->dev);

	return r;