From df7d0dfb9c686df31149d09008ba92834bed9803 Mon Sep 17 00:00:00 2001 From: Jens Gustedt Date: Mon, 1 Sep 2014 00:46:23 +0200 Subject: use weak symbols for the POSIX functions that will be used by C threads The intent of this is to avoid name space pollution of the C threads implementation. This has two sides to it. First we have to provide symbols that wouldn't pollute the name space for the C threads implementation. Second we have to clean up some internal uses of POSIX functions such that they don't implicitly drag in such symbols. --- src/thread/pthread_join.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'src/thread/pthread_join.c') diff --git a/src/thread/pthread_join.c b/src/thread/pthread_join.c index abd2d668..19e6b548 100644 --- a/src/thread/pthread_join.c +++ b/src/thread/pthread_join.c @@ -1,16 +1,20 @@ #include "pthread_impl.h" #include +int __munmap(void *, size_t); + static void dummy(void *p) { } -int pthread_join(pthread_t t, void **res) +int __pthread_join(pthread_t t, void **res) { int tmp; pthread_testcancel(); while ((tmp = t->tid)) __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); + if (t->map_base) __munmap(t->map_base, t->map_size); return 0; } + +weak_alias(__pthread_join, pthread_join); -- cgit v1.2.1