<html>
<head>
<base href="https://bugs.freedesktop.org/">
</head>
<body>
<p>
<div>
<b><a class="bz_bug_link
bz_status_NEW "
title="NEW - multi-threaded usage of Gallium RadeonSI leads to NULL pointer exception in pb_cache_reclaim_buffer"
href="https://bugs.freedesktop.org/show_bug.cgi?id=103304#c4">Comment # 4</a>
on <a class="bz_bug_link
bz_status_NEW "
title="NEW - multi-threaded usage of Gallium RadeonSI leads to NULL pointer exception in pb_cache_reclaim_buffer"
href="https://bugs.freedesktop.org/show_bug.cgi?id=103304">bug 103304</a>
from <span class="vcard"><a class="email" href="mailto:lper.home@gmail.com" title="Luc <lper.home@gmail.com>"> <span class="fn">Luc</span></a>
</span></b>
<pre>Yes, we use the glFenceSync() / glWaitSync() system.
We have multiple buffers going around and after each vsync a check is done
which can be recycled using the non blocking glWaitSync.
However, will check if this is done everywhere correctly in our code.
Reason of the multi-threading was the format change done during texture upload
(which took a lot of cpu power). However, now we do this in a worker thread
with optimized code, before doing the texture upload (so to assure the format
is compatible with the GPU before requesting the texture upload).
Therefore I adapted the code so that both (texture upload and rendering/flush)
are now done in one thread as a work around.</pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are the assignee for the bug.</li>
</ul>
</body>
</html>