[Bug 105339] Deadlock inside glClientWaitSync

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Mon Mar 5 01:08:50 UTC 2018


https://bugs.freedesktop.org/show_bug.cgi?id=105339

--- Comment #4 from Matias N. Goldberg <dark_sylinc at yahoo.com.ar> ---
By the way, if I change the waits to the following:

while( waitRet != GL_ALREADY_SIGNALED && waitRet != GL_CONDITION_SATISFIED )
{
    waitDuration = 1 second;
    waitRet = glClientWaitSync( fenceName, waitFlags, waitDuration );
    assert( waitRet != GL_WAIT_FAILED );
}

Then it still deadlocks. glClientWaitSync returns, but the fence never
completes, leaving the while() loop as an infinite loop.

Once it starts deadlock, if I step inside si_fence_finish I can see that
rfence->tc_token is 0, which either means that it was always 0, or it has been
already zeroed.

I do not know how to continue debugging this race condition as I am not
familiar with the code.

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/dri-devel/attachments/20180305/23e9d7a6/attachment.html>


More information about the dri-devel mailing list