From owner-freebsd-net@FreeBSD.ORG Fri Jun 6 00:17:24 2003 Return-Path: Delivered-To: freebsd-net@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 2213937B401 for ; Fri, 6 Jun 2003 00:17:24 -0700 (PDT) Received: from sccrmhc12.attbi.com (sccrmhc12.attbi.com [204.127.202.56]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7E61643F75 for ; Fri, 6 Jun 2003 00:17:23 -0700 (PDT) (envelope-from julian@elischer.org) Received: from interjet.elischer.org ([12.232.168.4]) by attbi.com (sccrmhc12) with ESMTP id <200306060717220120097diee>; Fri, 6 Jun 2003 07:17:22 +0000 Received: from localhost (localhost.elischer.org [127.0.0.1]) by InterJet.elischer.org (8.9.1a/8.9.1) with ESMTP id AAA16991; Fri, 6 Jun 2003 00:17:21 -0700 (PDT) Date: Fri, 6 Jun 2003 00:17:20 -0700 (PDT) From: Julian Elischer To: Vincent Jardin In-Reply-To: <200306060851.30777.vjardin@wanadoo.fr> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII cc: Michael Shiu cc: freebsd-net@freebsd.org Subject: Re: Does Netgraph in FBSD 5.x SMP requires GIANT lock? X-BeenThere: freebsd-net@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Networking and TCP/IP with FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 06 Jun 2003 07:17:24 -0000 On Fri, 6 Jun 2003, Vincent Jardin wrote: > > > > it should not require Giant. > > However there are some locking 'holes' that come when locked resources > > are accessed by external code that is executed from other contexts.. > > e.g. many drivers do not know about the locks in their netgraph half, > > and just 'do' what they want. Also there are instances of callout > > (timeout) code doing things to a node without getting teh node's lock. > > > > What's about ng_l2tp ? > The BSD's callout functions are used instead of the Netgraph's > ng_[un]timeout functions. Basically they and others.. but the ng_timeout() functions are still not the complete solution (yet). they are not even used yet.