diff options
| author | John-Mark Gurney <jmg@FreeBSD.org> | 2004-08-15 06:24:42 +0000 |
|---|---|---|
| committer | John-Mark Gurney <jmg@FreeBSD.org> | 2004-08-15 06:24:42 +0000 |
| commit | ad3b9257c2f09a6f1c0e56c1100aa4e43fb95e24 (patch) | |
| tree | 1172b68a7c9e7fa73090ae134eb98825bdab8ad6 /sys/kern/kern_sig.c | |
| parent | 93ab8d76ea3d4ccf038a7358dd72270f7f9485d8 (diff) | |
Notes
Diffstat (limited to 'sys/kern/kern_sig.c')
| -rw-r--r-- | sys/kern/kern_sig.c | 10 |
1 files changed, 3 insertions, 7 deletions
diff --git a/sys/kern/kern_sig.c b/sys/kern/kern_sig.c index e6e8f67da88e..4cd09ccf2211 100644 --- a/sys/kern/kern_sig.c +++ b/sys/kern/kern_sig.c @@ -1674,7 +1674,7 @@ do_tdsignal(struct thread *td, int sig, sigtarget_t target) ps = p->p_sigacts; PROC_LOCK_ASSERT(p, MA_OWNED); - KNOTE(&p->p_klist, NOTE_SIGNAL | sig); + KNOTE_LOCKED(&p->p_klist, NOTE_SIGNAL | sig); prop = sigprop(sig); @@ -2720,9 +2720,7 @@ filt_sigattach(struct knote *kn) kn->kn_ptr.p_proc = p; kn->kn_flags |= EV_CLEAR; /* automatically set */ - PROC_LOCK(p); - SLIST_INSERT_HEAD(&p->p_klist, kn, kn_selnext); - PROC_UNLOCK(p); + knlist_add(&p->p_klist, kn, 0); return (0); } @@ -2732,9 +2730,7 @@ filt_sigdetach(struct knote *kn) { struct proc *p = kn->kn_ptr.p_proc; - PROC_LOCK(p); - SLIST_REMOVE(&p->p_klist, kn, knote, kn_selnext); - PROC_UNLOCK(p); + knlist_remove(&p->p_klist, kn, 0); } /* |
