optimize timer creation and possibly protect against some minor races
authorRich Felker <dalias@aerifal.cx>
Wed, 30 Mar 2011 16:06:39 +0000 (12:06 -0400)
committerRich Felker <dalias@aerifal.cx>
Wed, 30 Mar 2011 16:06:39 +0000 (12:06 -0400)
commitb8be64c43da207a2f497c1c5b5720e4a2027348a
tree943491b9a0212fe048fbe3c8d8d71202fe883867
parenta1eb8cb5dab06dd23c256d03d82ef6b0efc4b6c6
optimize timer creation and possibly protect against some minor races

the major idea of this patch is not to depend on having the timer
pointer delivered to the signal handler, and instead use the thread
pointer to get the callback function address and argument. this way,
the parent thread can make the timer_create syscall while the child
thread is starting, and it should never have to block waiting for the
barrier.
src/internal/pthread_impl.h
src/time/timer_create.c