From owner-freebsd-arch@FreeBSD.ORG Mon Mar 10 14:18:52 2008 Return-Path: Delivered-To: freebsd-arch@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 71E601065674 for ; Mon, 10 Mar 2008 14:18:52 +0000 (UTC) (envelope-from skalla.raabjorn@gmx.de) Received: from mail.gmx.net (mail.gmx.net [213.165.64.20]) by mx1.freebsd.org (Postfix) with SMTP id CF1AC8FC28 for ; Mon, 10 Mar 2008 14:18:51 +0000 (UTC) (envelope-from skalla.raabjorn@gmx.de) Received: (qmail invoked by alias); 10 Mar 2008 14:18:50 -0000 Received: from g227178023.adsl.alicedsl.de (EHLO sol.hackerzberg.local) [92.227.178.23] by mail.gmx.net (mp010) with SMTP; 10 Mar 2008 15:18:50 +0100 X-Authenticated: #8038066 X-Provags-ID: V01U2FsdGVkX19ZjaZYMRNZ6doAILG23VidGSARLxIGYpEpSTThAZ uoh0wDPrGHyUfe Date: Mon, 10 Mar 2008 15:18:50 +0100 From: Skalla Raabjorn To: freebsd-arch@freebsd.org Message-ID: <20080310151850.6d8451ff@sol.hackerzberg.local> In-Reply-To: <20080310143919.V50827@fledge.watson.org> References: <20080310140753.24630bda@sol.hackerzberg.local> <20080310143919.V50827@fledge.watson.org> X-Mailer: Claws Mail 3.3.1 (GTK+ 2.12.8; i386-portbld-freebsd7.0) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Y-GMX-Trusted: 0 Subject: Re: If GIANT is locked can the MPSAFE parts run in parallel? X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 10 Mar 2008 14:18:52 -0000 On Mon, 10 Mar 2008 14:45:36 +0100 (BST) Robert Watson wrote: > > On Mon, 10 Mar 2008, Skalla Raabjorn wrote: > > > if GIANT is locked can the MPSAFE parts run in parallel? Like networking for > > example, as they have their own locks. > > Dear Skalla, > > Yes. Giant is [almost] a mutex like any other mutex, so as long as the MPSAFE > subsystem isn't being invoked by something holding Giant, it generally won't > run with it. Even if the network stack is sometimes executed with Giant held > (for example, when receiving a packet from SLIP), that doesn't prevent the > network stack from executing in parallel on other CPUs, it just serializes > with respect to other Giant holders executing. Thanks, that's all I wanted to know :)