diff options
author | davidxu <davidxu@FreeBSD.org> | 2006-10-14 13:40:08 +0000 |
---|---|---|
committer | davidxu <davidxu@FreeBSD.org> | 2006-10-14 13:40:08 +0000 |
commit | e8a2970aaf63dc792fbf353f4f8da07fd3c142e2 (patch) | |
tree | 925b134818a3c663291419de374396e6e3615b2e /lib/libthr | |
parent | e7d9ab08978136ae53298ee700121a023f30501c (diff) | |
download | FreeBSD-src-e8a2970aaf63dc792fbf353f4f8da07fd3c142e2.zip FreeBSD-src-e8a2970aaf63dc792fbf353f4f8da07fd3c142e2.tar.gz |
Don't inherit THR_FLAGS_NEED_SUSPEND for child process, child process
only has one thread, setting the flag can cause the thread to be
suspended and no another thread will resume it.
Diffstat (limited to 'lib/libthr')
-rw-r--r-- | lib/libthr/thread/thr_fork.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/lib/libthr/thread/thr_fork.c b/lib/libthr/thread/thr_fork.c index d622259..cb487d4 100644 --- a/lib/libthr/thread/thr_fork.c +++ b/lib/libthr/thread/thr_fork.c @@ -144,6 +144,8 @@ _fork(void) /* Child process */ errsave = errno; curthread->cancelflags &= ~THR_CANCEL_NEEDED; + curthread->flags &= ~THR_FLAGS_NEED_SUSPEND; + /* * Thread list will be reinitialized, and later we call * _libpthread_init(), it will add us back to list. |