From b9bf42d3e1969248b18f87a2b7973901ffb79b36 Mon Sep 17 00:00:00 2001 From: Pierre-Eric Pelloux-Prayer Date: Tue, 17 Mar 2020 16:50:56 +0100 Subject: [PATCH] amdgpu: increase cpu_map_count storage size MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Mesa expects to be able to map the same buffer, without unmapping it. This leads to problem on long-running program. On the other hand, libdrm uses cpu_map_count as a refcount and expects its value to decrease so it can unmap buffers. The previoulsy proprosed fix (https://patchwork.freedesktop.org/patch/258005/) stopped increased the counter when it went past INT_MAX. This commit instead proposes to use a larger type to store cpu_map_count. The outcome is the same: long running apps will not crash, only the implementation differs. Closes: https://gitlab.freedesktop.org/mesa/mesa/issues/1423 Reviewed-by: Michel Dänzer Reviewed-by: Marek Olšák --- amdgpu/amdgpu_internal.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/amdgpu/amdgpu_internal.h b/amdgpu/amdgpu_internal.h index a340abbd..37a7c9d5 100644 --- a/amdgpu/amdgpu_internal.h +++ b/amdgpu/amdgpu_internal.h @@ -102,7 +102,7 @@ struct amdgpu_bo { pthread_mutex_t cpu_access_mutex; void *cpu_ptr; - int cpu_map_count; + int64_t cpu_map_count; }; struct amdgpu_bo_list {