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:
José Fonseca
2014-11-13 15:01:19 +00:00
parent 2b6e703863
commit d5b1731178
+6
View File
@@ -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 */