llvmpipe: Call pipe_thread_wait() on Linux.
To address http://lists.freedesktop.org/archives/mesa-dev/2014-November/070569.html
In short, revert 706ad3b649 for non-Windows
OSes.
This commit is contained in:
@@ -800,7 +800,9 @@ static PIPE_THREAD_ROUTINE( thread_function, init_data )
|
||||
pipe_semaphore_signal(&task->work_done);
|
||||
}
|
||||
|
||||
#ifdef _WIN32
|
||||
pipe_semaphore_signal(&task->work_done);
|
||||
#endif
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -891,7 +893,11 @@ void lp_rast_destroy( struct lp_rasterizer *rast )
|
||||
* We don't actually call pipe_thread_wait to avoid dead lock on Windows
|
||||
* per https://bugs.freedesktop.org/show_bug.cgi?id=76252 */
|
||||
for (i = 0; i < rast->num_threads; i++) {
|
||||
#ifdef _WIN32
|
||||
pipe_semaphore_wait(&rast->tasks[i].work_done);
|
||||
#else
|
||||
pipe_thread_wait(rast->threads[i]);
|
||||
#endif
|
||||
}
|
||||
|
||||
/* Clean up per-thread data */
|
||||
|
||||
Reference in New Issue
Block a user