diff options
Diffstat (limited to 'lib/libthr/thread/thr_join.c')
| -rw-r--r-- | lib/libthr/thread/thr_join.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/lib/libthr/thread/thr_join.c b/lib/libthr/thread/thr_join.c index 8b579781ef1b..ed0336796af9 100644 --- a/lib/libthr/thread/thr_join.c +++ b/lib/libthr/thread/thr_join.c @@ -122,7 +122,9 @@ _pthread_join(pthread_t pthread, void **thread_return) _thread_critical_exit(curthread); THREAD_LIST_UNLOCK; DEAD_LIST_UNLOCK; - _thread_suspend(curthread, NULL); + ret = _thread_suspend(curthread, NULL); + if (ret != 0 && ret != EAGAIN && ret != EINTR) + PANIC("Unable to suspend in join."); /* * XXX - For correctness reasons. |
