[PATCH libdrm 1/2] amdgpu: prevent an integer wraparound of cpu_map_count

Michel Dänzer michel at daenzer.net
Tue Oct 30 15:59:04 UTC 2018


On 2018-10-30 4:52 p.m., Marek Olšák wrote:
> On Tue, Oct 30, 2018, 11:49 AM Marek Olšák <maraeo at gmail.com> wrote:
>> On Tue, Oct 30, 2018, 4:20 AM Michel Dänzer <michel at daenzer.net> wrote:
>>
>>> On 2018-10-29 10:15 p.m., Marek Olšák wrote:
>>>> You and I discussed this extensively internally a while ago. It's
>>> expected
>>>> and correct behavior. Mesa doesn't unmap some buffers and never will.
>>>
>>> It doesn't need to keep mapping the same buffer over and over again
>>> though, does it?
>>>
>>
>> It doesnt map it again. It just doesnt unmap. So the next map call just
>> returns the pointer. It's correct to stop the counter wraparound.
>>
> 
> Mesa doesn't track whether a buffer is already mapped. Libdrm tracks that.
> It's a feature of libdrm to return the same pointer and expect infinite
> number of map calls.

That's not what the reference counting in libdrm is intended for. It's
for keeping track of how many independent callers have mapped the
buffer. Mesa should remember that it mapped a buffer and not map it again.


-- 
Earthling Michel Dänzer               |               http://www.amd.com
Libre software enthusiast             |             Mesa and X developer


More information about the amd-gfx mailing list