From owner-p4-projects@FreeBSD.ORG Fri Jan 5 07:54:06 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 26AC816A5B3; Fri, 5 Jan 2007 07:54:06 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id DD42816A5AC for ; Fri, 5 Jan 2007 07:54:05 +0000 (UTC) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id CD76F13C442 for ; Fri, 5 Jan 2007 07:54:05 +0000 (UTC) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l057s57Q066111 for ; Fri, 5 Jan 2007 07:54:05 GMT (envelope-from rdivacky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l057s5bU066108 for perforce@freebsd.org; Fri, 5 Jan 2007 07:54:05 GMT (envelope-from rdivacky@FreeBSD.org) Date: Fri, 5 Jan 2007 07:54:05 GMT Message-Id: <200701050754.l057s5bU066108@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to rdivacky@FreeBSD.org using -f From: Roman Divacky To: Perforce Change Reviews Cc: Subject: PERFORCE change 112534 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 05 Jan 2007 07:54:06 -0000 http://perforce.freebsd.org/chv.cgi?CH=112534 Change 112534 by rdivacky@rdivacky_witten on 2007/01/05 07:53:57 Dont lock em in a case of just using em->shared->group_pid because the group_pid never changes. Affected files ... .. //depot/projects/linuxolator/src/sys/compat/linux/linux_misc.c#50 edit .. //depot/projects/linuxolator/src/sys/compat/linux/linux_signal.c#9 edit Differences ... ==== //depot/projects/linuxolator/src/sys/compat/linux/linux_misc.c#50 (text+ko) ==== @@ -1448,10 +1448,9 @@ #endif if (linux_use26(td)) { - em = em_find(td->td_proc, EMUL_DOLOCK); + em = em_find(td->td_proc, EMUL_DONTLOCK); KASSERT(em != NULL, ("getpid: emuldata not found.\n")); td->td_retval[0] = em->shared->group_pid; - EMUL_UNLOCK(&emul_lock); } else { td->td_retval[0] = td->td_proc->p_pid; } @@ -1490,7 +1489,7 @@ return (0); } - em = em_find(td->td_proc, EMUL_DOLOCK); + em = em_find(td->td_proc, EMUL_DONTLOCK); KASSERT(em != NULL, ("getppid: process emuldata not found.\n")); @@ -1519,7 +1518,6 @@ } else td->td_retval[0] = pp->p_pid; - EMUL_UNLOCK(&emul_lock); PROC_UNLOCK(pp); return (0); ==== //depot/projects/linuxolator/src/sys/compat/linux/linux_signal.c#9 (text+ko) ==== @@ -561,7 +561,7 @@ PROC_UNLOCK(p); - em = em_find(p, EMUL_DOLOCK); + em = em_find(p, EMUL_DONTLOCK); if (em == NULL) { #ifdef DEBUG @@ -573,8 +573,6 @@ if (em->shared->group_pid != args->tgid) return ESRCH; - EMUL_UNLOCK(&emul_lock); - return linux_kill(td, &ka); }