aboutsummaryrefslogtreecommitdiff
path: root/lib/libthr
diff options
context:
space:
mode:
authorMike Makonnen <mtm@FreeBSD.org>2004-02-19 13:47:12 +0000
committerMike Makonnen <mtm@FreeBSD.org>2004-02-19 13:47:12 +0000
commit8c18819a814a8ef052084193321d6e249f21e830 (patch)
tree04c73926ff2b4b82cfe3b609b1613a49b8294f74 /lib/libthr
parentf4c2aae4205f87af8ab276ebb48e1a3d61d88b30 (diff)
downloadsrc-8c18819a814a8ef052084193321d6e249f21e830.tar.gz
src-8c18819a814a8ef052084193321d6e249f21e830.zip
Don't wake up the thread after the signal handler
has been executed. On return from the signal handler the call will either be restarted or EINTR will be returned, but it will not go back to its previous state. So, it is sufficient to simply change the state to 'running' without actually trying to wake up the thread.
Notes
Notes: svn path=/head/; revision=125999
Diffstat (limited to 'lib/libthr')
-rw-r--r--lib/libthr/thread/thr_sig.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/libthr/thread/thr_sig.c b/lib/libthr/thread/thr_sig.c
index 48b3388dfaab..0b8ba2b9794f 100644
--- a/lib/libthr/thread/thr_sig.c
+++ b/lib/libthr/thread/thr_sig.c
@@ -177,6 +177,6 @@ _thread_sig_wrapper(int sig, siginfo_t *info, void *context)
/* Restore the thread's flags, and make it runnable */
_thread_critical_enter(curthread);
curthread->flags = psd.psd_flags;
- PTHREAD_NEW_STATE(curthread, PS_RUNNING);
+ PTHREAD_SET_STATE(curthread, PS_RUNNING);
_thread_critical_exit(curthread);
}