amdgpu: increase cpu_map_count storage size
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 <mdaenzer@redhat.com> Reviewed-by: Marek Olšák <marek.olsak@amd.com>main
parent
bb4e154d3d
commit
b9bf42d3e1
|
@ -102,7 +102,7 @@ struct amdgpu_bo {
|
||||||
|
|
||||||
pthread_mutex_t cpu_access_mutex;
|
pthread_mutex_t cpu_access_mutex;
|
||||||
void *cpu_ptr;
|
void *cpu_ptr;
|
||||||
int cpu_map_count;
|
int64_t cpu_map_count;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct amdgpu_bo_list {
|
struct amdgpu_bo_list {
|
||||||
|
|
Loading…
Reference in New Issue