From 43eb761cad8a7941788735d2d7a5f10a36a25148 Mon Sep 17 00:00:00 2001 From: Bas Nieuwenhuizen Date: Fri, 17 Mar 2017 01:04:03 +0100 Subject: [PATCH] radv/amdgpu: Enable dumping of all IBs with RADV_DEBUG=allbos. Signed-off-by: Bas Nieuwenhuizen Reviewed-by: Dave Airlie --- src/amd/vulkan/winsys/amdgpu/radv_amdgpu_cs.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/src/amd/vulkan/winsys/amdgpu/radv_amdgpu_cs.c b/src/amd/vulkan/winsys/amdgpu/radv_amdgpu_cs.c index ad4b0b3f9dc..adb855f97de 100644 --- a/src/amd/vulkan/winsys/amdgpu/radv_amdgpu_cs.c +++ b/src/amd/vulkan/winsys/amdgpu/radv_amdgpu_cs.c @@ -969,6 +969,19 @@ static void *radv_amdgpu_winsys_get_cpu_addr(void *_cs, uint64_t addr) return (char *)ret + (addr - bo->va); } } + if(cs->ws->debug_all_bos) { + pthread_mutex_lock(&cs->ws->global_bo_list_lock); + list_for_each_entry(struct radv_amdgpu_winsys_bo, bo, + &cs->ws->global_bo_list, global_list_item) { + if (addr >= bo->va && addr - bo->va < bo->size) { + if (amdgpu_bo_cpu_map(bo->bo, &ret) == 0) { + pthread_mutex_unlock(&cs->ws->global_bo_list_lock); + return (char *)ret + (addr - bo->va); + } + } + } + pthread_mutex_unlock(&cs->ws->global_bo_list_lock); + } return ret; } -- 2.30.2