Hi all, Another multi-threading bug I ran into, this time with radeonsi shader fences.
Patches 1-5 make util_queue_fence more widely usable, and include an optional futex-based implementation. The patches themselves are on top of the simple-mutex patches, but could easily be removed to drop the futex stuff (though the memory improvements are a pretty strong argument). Please review! Thanks, Nicolai -- src/gallium/drivers/radeonsi/si_shader.c | 3 + src/gallium/drivers/radeonsi/si_shader.h | 2 +- .../drivers/radeonsi/si_state_shaders.c | 94 +++++++++---- src/util/Makefile.sources | 1 + src/util/futex.h | 55 ++++++++ src/util/meson.build | 1 + src/util/simple_mtx.h | 20 +-- src/util/u_queue.c | 8 +- src/util/u_queue.h | 121 +++++++++++++++-- 9 files changed, 245 insertions(+), 60 deletions(-) _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev