diff --git a/sys/kern/kern_proc.c b/sys/kern/kern_proc.c index 6eeb29556e71..500ecf20768f 100644 --- a/sys/kern/kern_proc.c +++ b/sys/kern/kern_proc.c @@ -1369,16 +1369,12 @@ kern_proc_out(struct proc *p, struct sbuf *sb, int flags) } static int -sysctl_out_proc(struct proc *p, struct sysctl_req *req, int flags, - int doingzomb) +sysctl_out_proc(struct proc *p, struct sysctl_req *req, int flags) { struct sbuf sb; struct kinfo_proc ki; - struct proc *np; int error, error2; - pid_t pid; - pid = p->p_pid; sbuf_new_for_sysctl(&sb, (char *)&ki, sizeof(ki), req); sbuf_clear_flags(&sb, SBUF_INCLUDENUL); error = kern_proc_out(p, &sb, flags); @@ -1388,20 +1384,6 @@ sysctl_out_proc(struct proc *p, struct sysctl_req *req, int flags, return (error); else if (error2 != 0) return (error2); - if (doingzomb) - np = zpfind(pid); - else { - if (pid == 0) - return (0); - np = pfind(pid); - } - if (np == NULL) - return (ESRCH); - if (np != p) { - PROC_UNLOCK(np); - return (ESRCH); - } - PROC_UNLOCK(np); return (0); } @@ -1435,7 +1417,7 @@ sysctl_kern_proc(SYSCTL_HANDLER_ARGS) sx_slock(&proctree_lock); error = pget((pid_t)name[0], PGET_CANSEE, &p); if (error == 0) - error = sysctl_out_proc(p, req, flags, 0); + error = sysctl_out_proc(p, req, flags); sx_sunlock(&proctree_lock); return (error); } @@ -1566,7 +1548,7 @@ sysctl_kern_proc(SYSCTL_HANDLER_ARGS) } - error = sysctl_out_proc(p, req, flags, doingzomb); + error = sysctl_out_proc(p, req, flags); if (error) { sx_sunlock(&allproc_lock); sx_sunlock(&proctree_lock);