Author: kib
Date: Sun Feb 15 08:43:19 2015
New Revision: 278794
URL: https://svnweb.freebsd.org/changeset/base/278794

Log:
  Return with the process locked, caller expects p still locked after
  the call.
  
  Reported and tested by:       bapt
  Sponsored by: The FreeBSD Foundation
  MFC after:    3 days

Modified:
  head/sys/kern/kern_procctl.c

Modified: head/sys/kern/kern_procctl.c
==============================================================================
--- head/sys/kern/kern_procctl.c        Sun Feb 15 08:38:43 2015        
(r278793)
+++ head/sys/kern/kern_procctl.c        Sun Feb 15 08:43:19 2015        
(r278794)
@@ -239,13 +239,13 @@ reap_kill(struct thread *td, struct proc
        int error, error1;
 
        sx_assert(&proctree_lock, SX_LOCKED);
-       PROC_UNLOCK(p);
        if (IN_CAPABILITY_MODE(td))
                return (ECAPMODE);
        if (rk->rk_sig <= 0 || rk->rk_sig > _SIG_MAXSIG)
                return (EINVAL);
        if ((rk->rk_flags & ~REAPER_KILL_CHILDREN) != 0)
                return (EINVAL);
+       PROC_UNLOCK(p);
        reap = (p->p_treeflag & P_TREE_REAPER) == 0 ? p->p_reaper : p;
        ksiginfo_init(&ksi);
        ksi.ksi_signo = rk->rk_sig;
_______________________________________________
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to