gallium/u_threaded: don't reference resource in pipe_transfer
authorMarek Olšák <marek.olsak@amd.com>
Fri, 7 May 2021 12:40:35 +0000 (08:40 -0400)
committerMarge Bot <eric+marge@anholt.net>
Mon, 17 May 2021 10:37:24 +0000 (10:37 +0000)
commit6fed423ade729ddd876778c399feae9f9c8b346d
treeda83fe18275862d4b85c3d70e8079d5cf2cc63b3
parent6ac085966bb9f3e7f37977dc55ed689f4acffa5f
gallium/u_threaded: don't reference resource in pipe_transfer

The atomic can be costly, so skip it. This should be safe because
we never have pipe_transfer as the only live reference of a buffer.

Drivers can't do this yet because something needs to hold the resource
reference while a transfer object is being passed via u_threaded_context.

Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Reviewed-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10662>
src/gallium/auxiliary/util/u_threaded_context.c