diff options
author | Andres Rodriguez <[email protected]> | 2018-04-30 18:05:49 -0400 |
---|---|---|
committer | Andres Rodriguez <[email protected]> | 2018-04-30 18:20:30 -0400 |
commit | f56e22e49673e8234a7fe0c241b4c3eae4752f34 (patch) | |
tree | eadaf9d931e7114dd0e8136a85f260860cfb2c77 /src/amd/vulkan | |
parent | 2a08ae3c7cba14b9805d006e1981ba9d762bf241 (diff) |
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 <[email protected]>
Reviewed-by: Bas Nieuwenhuizen <[email protected]>
CC: 18.0 18.1 <[email protected]>
Diffstat (limited to 'src/amd/vulkan')
-rw-r--r-- | src/amd/vulkan/winsys/amdgpu/radv_amdgpu_bo.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/amd/vulkan/winsys/amdgpu/radv_amdgpu_bo.c b/src/amd/vulkan/winsys/amdgpu/radv_amdgpu_bo.c index e2060651e48..8ed3e53e2d3 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: |