From 7922cdc855467c3b1e8268fc446885f38950406d Mon Sep 17 00:00:00 2001 From: Olivier Houchard Date: Tue, 4 Nov 2003 01:41:47 +0000 Subject: [PATCH] I believe kbyanc@ really meant this in rev 1.58. Use zpfind() to see if the process became a zombie if pfind() doesn't find it and if the caller wants to know about process death, so that the caller knows the process died even if it happened before the kevent was actually registered. MFC after: 1 week --- sys/kern/kern_event.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/kern/kern_event.c b/sys/kern/kern_event.c index 85ee24e46efb..63a914f5d276 100644 --- a/sys/kern/kern_event.c +++ b/sys/kern/kern_event.c @@ -195,12 +195,12 @@ filt_procattach(struct knote *kn) immediate = 0; p = pfind(kn->kn_id); - if (p == NULL) - return (ESRCH); if (p == NULL && (kn->kn_sfflags & NOTE_EXIT)) { p = zpfind(kn->kn_id); immediate = 1; } + if (p == NULL) + return (ESRCH); if ((error = p_cansee(curthread, p))) { PROC_UNLOCK(p); return (error);