add missing memory barrier to pthread_join
authorBobby Bingham <koorogi@koorogi.info>
Sun, 4 Oct 2015 19:55:29 +0000 (14:55 -0500)
committerRich Felker <dalias@aerifal.cx>
Fri, 16 Oct 2015 02:58:59 +0000 (22:58 -0400)
commit53cd8c5a29b57ef3776ce152e00544752f3ce790
tree13e79d3d9b7205947b5cdcaec85c3f5a3a1f5dca
parentbde0b4b92e2c3f8d26d28e8478f196233ce51618
add missing memory barrier to pthread_join

POSIX requires pthread_join to synchronize memory on success.  The
futex wait inside __timedwait_cp cannot handle this because it's not
called in all cases.  Also, in the case of a spurious wake, tid can
become zero between the wake and when the joining thread checks it.
src/thread/pthread_join.c