Module: Mesa Branch: master Commit: d5b1731178378b3d828c74368f6bfe85edc10618 URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=d5b1731178378b3d828c74368f6bfe85edc10618
Author: José Fonseca <[email protected]> Date: Thu Nov 13 15:01:19 2014 +0000 llvmpipe: Call pipe_thread_wait() on Linux. To address http://lists.freedesktop.org/archives/mesa-dev/2014-November/070569.html In short, revert 706ad3b649e6a75fdac9dc9acc3caa9e6067b853 for non-Windows OSes. --- src/gallium/drivers/llvmpipe/lp_rast.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/gallium/drivers/llvmpipe/lp_rast.c b/src/gallium/drivers/llvmpipe/lp_rast.c index 6b54d43..e168766 100644 --- a/src/gallium/drivers/llvmpipe/lp_rast.c +++ b/src/gallium/drivers/llvmpipe/lp_rast.c @@ -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 */ _______________________________________________ mesa-commit mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/mesa-commit
