From owner-p4-projects Wed Apr 17 11:57:40 2002 Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 352C837B41F; Wed, 17 Apr 2002 11:57:33 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from freefall.freebsd.org (freefall.FreeBSD.org [216.136.204.21]) by hub.freebsd.org (Postfix) with ESMTP id 7943737B400 for ; Wed, 17 Apr 2002 11:57:32 -0700 (PDT) Received: (from perforce@localhost) by freefall.freebsd.org (8.11.6/8.11.6) id g3HIvWb51262 for perforce@freebsd.org; Wed, 17 Apr 2002 11:57:32 -0700 (PDT) (envelope-from jhb@freebsd.org) Date: Wed, 17 Apr 2002 11:57:32 -0700 (PDT) Message-Id: <200204171857.g3HIvWb51262@freefall.freebsd.org> X-Authentication-Warning: freefall.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin Subject: PERFORCE change 9930 for review To: Perforce Change Reviews Sender: owner-p4-projects@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG http://people.freebsd.org/~peter/p4db/chv.cgi?CH=9930 Change 9930 by jhb@jhb_laptop on 2002/04/17 11:56:44 Don't need sched_lock to test p_stat against SZOMB and SSTOP. Affected files ... ... //depot/projects/smpng/sys/kern/kern_exit.c#35 edit Differences ... ==== //depot/projects/smpng/sys/kern/kern_exit.c#35 (text+ko) ==== @@ -539,7 +539,6 @@ } nfound++; - mtx_lock_spin(&sched_lock); if (p->p_stat == SZOMB) { /* * charge childs scheduling cpu usage to parent @@ -553,11 +552,12 @@ * XXXKSE */ if (curthread->td_proc->p_pid != 1) { + mtx_lock_spin(&sched_lock); curthread->td_ksegrp->kg_estcpu = ESTCPULIM(curthread->td_ksegrp->kg_estcpu + p->p_ksegrp.kg_estcpu); + mtx_unlock_spin(&sched_lock); } - mtx_unlock_spin(&sched_lock); td->td_retval[0] = p->p_pid; #ifdef COMPAT_43 @@ -673,7 +673,6 @@ } if (p->p_stat == SSTOP && (p->p_flag & P_WAITED) == 0 && (p->p_flag & P_TRACED || uap->options & WUNTRACED)) { - mtx_unlock_spin(&sched_lock); p->p_flag |= P_WAITED; sx_xunlock(&proctree_lock); td->td_retval[0] = p->p_pid; @@ -696,7 +695,6 @@ mtx_unlock(&Giant); return (error); } - mtx_unlock_spin(&sched_lock); PROC_UNLOCK(p); } sx_xunlock(&proctree_lock); To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe p4-projects" in the body of the message