Module: Mesa
Branch: master
Commit: f56e22e49673e8234a7fe0c241b4c3eae4752f34
URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=f56e22e49673e8234a7fe0c241b4c3eae4752f34

Author: Andres Rodriguez <andre...@gmail.com>
Date:   Mon Apr 30 18:05:49 2018 -0400

radv/winsys: fix leaking resources from bo's imported by fd

A bo's ref_count was not being initialized when imported from an fd.
Therefore, we would fail to free the resource during VkFreeMemory().

This patch fixes applications like hifi VR in threaded mode, which
perform frequent imports/releases of IPC shared memory.

Signed-off-by: Andres Rodriguez <andre...@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <b...@basnieuwenhuizen.nl>
CC: 18.0 18.1 <mesa-sta...@lists.freedesktop.org>

---

 src/amd/vulkan/winsys/amdgpu/radv_amdgpu_bo.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/amd/vulkan/winsys/amdgpu/radv_amdgpu_bo.c 
b/src/amd/vulkan/winsys/amdgpu/radv_amdgpu_bo.c
index e2060651e4..8ed3e53e2d 100644
--- a/src/amd/vulkan/winsys/amdgpu/radv_amdgpu_bo.c
+++ b/src/amd/vulkan/winsys/amdgpu/radv_amdgpu_bo.c
@@ -501,6 +501,7 @@ radv_amdgpu_winsys_bo_from_fd(struct radeon_winsys *_ws,
        bo->size = result.alloc_size;
        bo->is_shared = true;
        bo->ws = ws;
+       bo->ref_count = 1;
        radv_amdgpu_add_buffer_to_global_list(bo);
        return (struct radeon_winsys_bo *)bo;
 error_va_map:

_______________________________________________
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit

Reply via email to