diff --git a/sys/kern/kern_exit.c b/sys/kern/kern_exit.c --- a/sys/kern/kern_exit.c +++ b/sys/kern/kern_exit.c @@ -983,7 +983,6 @@ proc_id_clear(PROC_ID_PID, p->p_pid); PROC_LOCK(p); - knlist_delete(p->p_klist, td, 1); knlist_detach(p->p_klist); p->p_klist = NULL; PROC_UNLOCK(p); diff --git a/sys/kern/kern_sig.c b/sys/kern/kern_sig.c --- a/sys/kern/kern_sig.c +++ b/sys/kern/kern_sig.c @@ -4296,9 +4296,7 @@ static void filt_sigdetach(struct knote *kn) { - struct proc *p = kn->kn_ptr.p_proc; - - knlist_remove(p->p_klist, kn, 0); + knlist_remove(kn->kn_knlist, kn, 0); } /*