Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 74073c9d authored by Quentin Casasnovas's avatar Quentin Casasnovas Committed by Christian König
Browse files

drm/radeon: memory leak on bo reservation failure. v2



On bo reservation failure, we end up leaking fpriv.

v2 (chk): rebased and added missing free on vm failure as well

Fixes: 5e386b57 ("drm/radeon: fix missing bo reservation")
Cc: stable@vger.kernel.org
Cc: Christian König <christian.koenig@amd.com>
Cc: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: default avatarQuentin Casasnovas <quentin.casasnovas@oracle.com>
Signed-off-by: default avatarChristian König <christian.koenig@amd.com>
parent 681941c1
Loading
Loading
Loading
Loading
+7 −2
Original line number Diff line number Diff line
@@ -574,12 +574,17 @@ int radeon_driver_open_kms(struct drm_device *dev, struct drm_file *file_priv)
		}

		r = radeon_vm_init(rdev, &fpriv->vm);
		if (r)
		if (r) {
			kfree(fpriv);
			return r;
		}

		r = radeon_bo_reserve(rdev->ring_tmp_bo.bo, false);
		if (r)
		if (r) {
			radeon_vm_fini(rdev, &fpriv->vm);
			kfree(fpriv);
			return r;
		}

		/* map the ib pool buffer read only into
		 * virtual address space */