OSDN Git Service

amdgpu: increase cpu_map_count storage size
authorPierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Tue, 17 Mar 2020 15:50:56 +0000 (16:50 +0100)
committerPierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Mon, 23 Mar 2020 12:18:01 +0000 (13:18 +0100)
commitb9bf42d3e1969248b18f87a2b7973901ffb79b36
tree714d91785e01083f47a750944d21ae5fcb41c975
parentbb4e154d3dd8ddbe4b19d7ff2439933807318b5a
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>
amdgpu/amdgpu_internal.h