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

Commit 6aac6ced authored by Ben Skeggs's avatar Ben Skeggs
Browse files

drm/nouveau: fix pin refcnt leak in failure path



Signed-off-by: default avatarBen Skeggs <bskeggs@redhat.com>
parent b22870ba
Loading
Loading
Loading
Loading
+12 −12
Original line number Diff line number Diff line
@@ -333,7 +333,9 @@ nouveau_bo_pin(struct nouveau_bo *nvbo, uint32_t memtype)
	nouveau_bo_placement_set(nvbo, memtype, 0);

	ret = nouveau_bo_validate(nvbo, false, false);
	if (ret == 0) {
	if (ret)
		goto out;

	switch (bo->mem.mem_type) {
	case TTM_PL_VRAM:
		drm->gem.vram_available -= bo->mem.size;
@@ -344,11 +346,9 @@ nouveau_bo_pin(struct nouveau_bo *nvbo, uint32_t memtype)
	default:
		break;
	}
	}

ref_inc:
	nvbo->pin_refcnt++;

out:
	ttm_bo_unreserve(bo);
	return ret;