Commit 7be2bb8c authored by Matthew Auld's avatar Matthew Auld Committed by Christian König
Browse files

drm/ttm: fixup ttm_bo_add_move_fence v2

It looks like we still need to call dma_fence_put() on the man->move,
otherwise we just end up leaking it, leading to fireworks later.

v2(Daniel):
  - Simplify the function tail

Closes: https://gitlab.freedesktop.org/drm/intel/-/issues/5689


Fixes: 8bb31587 ("drm/ttm: remove bo->moving")
Cc: Christian König <christian.koenig@amd.com>
Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
Signed-off-by: default avatarMatthew Auld <matthew.auld@intel.com>
Reviewed-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
Reviewed-by: default avatarChristian König <christian.koenig@amd.com>
Signed-off-by: default avatarChristian König <christian.koenig@amd.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20220413082133.272445-1-matthew.auld@intel.com
parent 62c6f4f9
Loading
Loading
Loading
Loading
+2 −5
Original line number Original line Diff line number Diff line
@@ -740,12 +740,9 @@ static int ttm_bo_add_move_fence(struct ttm_buffer_object *bo,
	dma_resv_add_fence(bo->base.resv, fence, DMA_RESV_USAGE_KERNEL);
	dma_resv_add_fence(bo->base.resv, fence, DMA_RESV_USAGE_KERNEL);


	ret = dma_resv_reserve_fences(bo->base.resv, 1);
	ret = dma_resv_reserve_fences(bo->base.resv, 1);
	if (unlikely(ret)) {
	dma_fence_put(fence);
	dma_fence_put(fence);
	return ret;
	return ret;
}
}
	return 0;
}


/*
/*
 * Repeatedly evict memory from the LRU for @mem_type until we create enough
 * Repeatedly evict memory from the LRU for @mem_type until we create enough