diff options
author | Luoqi Chen <luoqi@FreeBSD.org> | 1999-10-11 20:33:17 +0000 |
---|---|---|
committer | Luoqi Chen <luoqi@FreeBSD.org> | 1999-10-11 20:33:17 +0000 |
commit | 645682fd40b5855a1dfbca5ddb330dda7cf5ddc0 (patch) | |
tree | 7cad9d7dad8a4c0a9a157153dada2dbbd270e491 /sys/kern/kern_kthread.c | |
parent | 456b2f80635b3455ab32f16fa5460146f93583c8 (diff) | |
download | src-645682fd40b5855a1dfbca5ddb330dda7cf5ddc0.tar.gz src-645682fd40b5855a1dfbca5ddb330dda7cf5ddc0.zip |
Add a per-signal flag to mark handlers registered with osigaction, so we
can provide the correct context to each signal handler.
Fix broken sigsuspend(): don't use p_oldsigmask as a flag, use SAS_OLDMASK
as we did before the linuxthreads support merge (submitted by bde).
Move ps_sigstk from to p_sigacts to the main proc structure since signal
stack should not be shared among threads.
Move SAS_OLDMASK and SAS_ALTSTACK flags from sigacts::ps_flags to proc::p_flag.
Move PS_NOCLDSTOP and PS_NOCLDWAIT flags from proc::p_flag to procsig::ps_flag.
Reviewed by: marcel, jdp, bde
Notes
Notes:
svn path=/head/; revision=52140
Diffstat (limited to 'sys/kern/kern_kthread.c')
-rw-r--r-- | sys/kern/kern_kthread.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/kern/kern_kthread.c b/sys/kern/kern_kthread.c index f5b0c1d74606..b375fbb3e129 100644 --- a/sys/kern/kern_kthread.c +++ b/sys/kern/kern_kthread.c @@ -76,7 +76,8 @@ kthread_create(void (*func)(void *), void *arg, *newpp = p2; /* this is a non-swapped system process */ - p2->p_flag |= P_INMEM | P_SYSTEM | P_NOCLDWAIT; + p2->p_flag |= P_INMEM | P_SYSTEM; + p2->p_procsig->ps_flag |= PS_NOCLDWAIT; PHOLD(p2); /* set up arg0 for 'ps', et al */ |