[Mesa-dev] [PATCH 0/6] Fix map/unmaps from different contexts

Edward O'Callaghan funfunctor at folklore1984.net
Wed Sep 28 13:55:38 UTC 2016


Oh interesting, I happen to be running into this recently!!! I'll have
to read though this, thanks for looking into it!

On 09/28/2016 04:21 AM, Nicolai Hähnle wrote:
> Hi all,
> 
> it can happen that a buffer that is mapped from one context ends up being
> unmapped in another one. I found nothing in the spec to forbid it, and in
> any case it's a scenario that people are increasingly likely to run into
> with persistent maps and multiple contexts.
> 
> This leads to crashes in some drivers because the Gallium pipe_transfer
> object is allocated from a per-context allocator.
> 
> While a possible fix would be to simply use a per-screen allocator, this
> would require an additional mutex lock/unlock in a pretty critical path.
> This series takes an alternative path of re-designing util/slab so that
> it can support free-ing an object in a different pool than the one it was
> allocated from. Please review!
> 
> Thanks,
> Nicolai
> 
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/mesa-dev
> 

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: OpenPGP digital signature
URL: <https://lists.freedesktop.org/archives/mesa-dev/attachments/20160928/07304445/attachment.sig>


More information about the mesa-dev mailing list