From owner-freebsd-arch@FreeBSD.ORG Mon Mar 10 13:45:37 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 1F6BC1065677 for ; Mon, 10 Mar 2008 13:45:37 +0000 (UTC) (envelope-from rwatson@FreeBSD.org) Received: from cyrus.watson.org (cyrus.watson.org [209.31.154.42]) by mx1.freebsd.org (Postfix) with ESMTP id 0D4D18FC16 for ; Mon, 10 Mar 2008 13:45:37 +0000 (UTC) (envelope-from rwatson@FreeBSD.org) Received: from fledge.watson.org (fledge.watson.org [209.31.154.41]) by cyrus.watson.org (Postfix) with ESMTP id 983FA46B0D; Mon, 10 Mar 2008 08:45:36 -0500 (EST) Date: Mon, 10 Mar 2008 14:45:36 +0100 (BST) From: Robert Watson X-X-Sender: robert@fledge.watson.org To: Skalla Raabjorn In-Reply-To: <20080310140753.24630bda@sol.hackerzberg.local> Message-ID: <20080310143919.V50827@fledge.watson.org> References: <20080310140753.24630bda@sol.hackerzberg.local> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed Cc: freebsd-arch@FreeBSD.org 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 13:45:37 -0000 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. Robert N M Watson Computer Laboratory University of Cambridge