summaryrefslogtreecommitdiff
path: root/src/gallium/auxiliary/os/os_thread.h
AgeCommit message (Collapse)AuthorFilesLines
2013-11-15gallium: fix build on GNU/Hurd due to missing PIPE_OS_HURD detectionCyril Brulebois1-6/+6
Thanks to Pino Toscano. Patch from Debian package. Cc: "10.0" <mesa-stable@lists.freedesktop.org> Reviewed-by: Brian Paul <brianp@vmware.com> (cherry picked from commit 2d77e4f922a8c34541d8b187e171738006bd6f4d)
2013-04-23mesa: Restore 78-column wrapping of license text in C-style comments.Kenneth Graunke1-4/+5
The previous commit introduced extra words, breaking the formatting. This text transformation was done automatically via the following shell command: $ git grep 'THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY' | sed 's/:.*$//' | xargs -I {} sh -c 'vim -e -s {} < vimscript where 'vimscript' is a file containing: /THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY/;/\*\// !fmt -w 78 -p ' * ' :wq Reviewed-by: Brian Paul <brianp@vmware.com>
2013-04-23mesa: Add "OR COPYRIGHT HOLDERS" to license text disclaiming liability.Kenneth Graunke1-1/+1
This brings the license text in line with the MIT License as published on the Open Source Initiative website: http://opensource.org/licenses/mit-license.php Generated automatically be the following shell command: $ git grep 'THE AUTHORS BE LIABLE' | sed 's/:.*$//g' | xargs -I '{}' \ sed -i 's/THE AUTHORS/THE AUTHORS OR COPYRIGHT HOLDERS/' {} This introduces some wrapping issues, to be fixed in the next commit. Reviewed-by: Brian Paul <brianp@vmware.com>
2013-04-23mesa: Change "BRIAN PAUL" to "THE AUTHORS" in license text.Kenneth Graunke1-1/+1
Generated automatically be the following shell command: $ git grep 'BRIAN PAUL BE LIABLE' | sed 's/:.*$//g' | xargs -I '{}' \ sed -i 's/BRIAN PAUL/THE AUTHORS/' {} The intention here is to protect all authors, not just Brian Paul. I believe that was already the sensible interpretation, but spelling it out is probably better. More practically, it also prevents people from accidentally copy & pasting the license into a new file which says Brian is not liable when he isn't even one of the authors. Reviewed-by: Brian Paul <brianp@vmware.com>
2012-05-05auxiliary/os: Add missing signal.h include.Baldo Davide1-0/+1
The signal.h include was missed in the commit bc16c73407d11bb6702cf7de9925bfaeb80a5272 which leads to broken compilations under Linux. Signed-off-by: José Fonseca <jose.r.fonseca@gmail.com>
2011-12-27gallium: use Mesa pthread_barrier_t on Haiku, as it is incomplete under HaikuAlexander von Gluck1-1/+1
Reviewed-by: Brian Paul <brianp@vmare.com> Signed-off-by: Brian Paul <brianp@vmware.com>
2011-08-21gallium: add PIPE_OS_ANDROID supportChia-I Wu1-1/+1
Android uses Linux kernel and its own C runtime. It resembles PIPE_OS_LINUX a lot with some minor exceptions. Reviewed-by: Brian Paul <brianp@vmware.com>
2011-06-17scons: make embedding orthogonal to the platformJosé Fonseca1-6/+6
To enable embedding in platforms other than linux.
2011-05-16gallium: block signals for new thread when spawning threadsDave Airlie1-1/+8
I'm hard pressed to think of any reason a gallium thread would want to receive a signal, especially considering its probably loaded as a library and you don't want the threads interfering with the main threads signal handling. This solves a problem loading llvmpipe into the X server for AIGLX, where the X server relies on the SIGIO signal going to the main thread, but once llvmpipe loads the SIGIO can end up in any of its threads. Signed-off-by: Dave Airlie <airlied@redhat.com>
2011-03-06os: Fix pipe_static_mutex on Windows.José Fonseca1-1/+2
2010-07-12os: remove gratuitous pipe_barrier placeholder codenobled1-21/+1
There's already an implementation of pipe_barrier using the other pipe_* primitives; just use that on Windows, too. Now Windows passes pipe_barrier_test.
2010-07-12os, rbug: remove PIPE_THREAD_HAVE_CONDVARnobled1-1/+0
The new default implementation of pipe_condvar makes it unnecessary.
2010-07-12os: Implement pipe_condvar on Windows Vista and laternobled1-0/+30
Unfortunately compiling with these defines enabled would mean Gallium can't run on Windows XP/2003 or older. Todo: Need a macro to declare if we don't care about WinXP compatibililty.
2010-07-12os: Implement pipe_condvar on win32nobled1-7/+27
Or at least a little of it. This version will sleep for a fixed amount of time instead of just deadlocking, which is a slight improvement. Also do the same thing on any unrecognized platform.
2010-05-13gallium: Add tokens for Cygwin.Vinson Lee1-5/+5
2010-04-26os: Check for spurious wakeups in pipe_barrier_wait.Vinson Lee1-1/+8
The POSIX function pthread_cond_wait can have spurious wakeups when waiting on a condition variable. Add a 64-bit counter that is incremented whenever the barrier becomes full. A woken thread checks the counter. If the counter has not changed then it has been spuriously woken and goes back to sleep. If the counter has changed then it was properly signaled and exits the barrier. Tested on Mac OS X. This patch was based on ideas from Luca Barbieri.
2010-04-17os: Implement pipe_barrier for POSIX platforms without pthread_barrier_t.Vinson Lee1-5/+26
This patch was tested on Mac OS X.
2010-03-31os: Temporarily use posix thread for embedded too.Kurt Daverman1-6/+6
2010-02-10os: Do not use Pthreads barrier functions on Mac OS X.Vinson Lee1-42/+52
Pthreads barrier functions are not available on some POSIX platforms.
2010-02-05os: Don't assert on missing implementation of barrier init/destroy. Just usage.José Fonseca1-2/+0
2010-02-05Merge remote branch 'origin/lp-binning'José Fonseca1-7/+144
Conflicts: src/gallium/auxiliary/util/u_dl.c src/gallium/auxiliary/util/u_time.h src/gallium/drivers/llvmpipe/lp_state_derived.c src/gallium/drivers/llvmpipe/lp_state_surface.c src/gallium/drivers/llvmpipe/lp_tex_cache.c src/gallium/drivers/llvmpipe/lp_tile_cache.c
2010-02-04os: Add missing dummy threading definitions.José Fonseca1-0/+19
2010-02-02gallium: Move p_thread.h and p_atomic.h out of gallium interfaces.José Fonseca1-0/+279
Into os/os_thread.h and util/u_atomic.h respectively.