Преглед изворни кода

fix pthread_join wait call: thread termination tid futex is not private

this seeme to be the bug that prevented enabling of private futex
support. i'm going to hold off on switching to private futexes until
after the next release, and until i get a chance to audit all
wait/wake calls to make sure they're using the correct private
argument, but with this change it should be safe to enable private
futex support.
Rich Felker пре 13 година
родитељ
комит
eb351a9e63
1 измењених фајлова са 1 додато и 1 уклоњено
  1. 1 1
      src/thread/pthread_join.c

+ 1 - 1
src/thread/pthread_join.c

@@ -7,7 +7,7 @@ static void dummy(void *p)
 int pthread_join(pthread_t t, void **res)
 {
 	int tmp = t->tid;
-	if (tmp) __timedwait(&t->tid, tmp, 0, 0, dummy, 0, 1);
+	if (tmp) __timedwait(&t->tid, tmp, 0, 0, dummy, 0, 0);
 	if (res) *res = t->result;
 	if (t->map_base) munmap(t->map_base, t->map_size);
 	return 0;