Author: mjg
Date: Sat Nov 11 18:02:23 2017
New Revision: 325719
URL: https://svnweb.freebsd.org/changeset/base/325719

Log:
  Remove useless proc lookup from sysctl_out_proc

Modified:
  head/sys/kern/kern_proc.c

Modified: head/sys/kern/kern_proc.c
==============================================================================
--- head/sys/kern/kern_proc.c   Sat Nov 11 16:09:20 2017        (r325718)
+++ head/sys/kern/kern_proc.c   Sat Nov 11 18:02:23 2017        (r325719)
@@ -1369,16 +1369,12 @@ kern_proc_out(struct proc *p, struct sbuf *sb, int fla
 }
 
 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
                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);
_______________________________________________
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to