Explorar el Código

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 hace 13 años
padre
commit
eb351a9e63
Se han modificado 1 ficheros con 1 adiciones y 1 borrados
  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;