From owner-freebsd-current@FreeBSD.ORG Tue Jul 17 20:03:21 2007 Return-Path: X-Original-To: current@FreeBSD.org Delivered-To: freebsd-current@FreeBSD.ORG Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 55A0E16A404; Tue, 17 Jul 2007 20:03:21 +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 1DE4E13C4B2; Tue, 17 Jul 2007 20:03:21 +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 A67F7470CD; Tue, 17 Jul 2007 16:03:20 -0400 (EDT) Date: Tue, 17 Jul 2007 21:03:20 +0100 (BST) From: Robert Watson X-X-Sender: robert@fledge.watson.org To: Pascal Hofstee In-Reply-To: <1184700506.1086.5.camel@worf> Message-ID: <20070717210053.M1177@fledge.watson.org> References: <20070717131518.G1177@fledge.watson.org> <1184700506.1086.5.camel@worf> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed Cc: arch@FreeBSD.org, current@FreeBSD.org Subject: Re: Reminder: NET_NEEDS_GIANT, debug.mpsafenet going away in 7.0 X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 17 Jul 2007 20:03:21 -0000 On Tue, 17 Jul 2007, Pascal Hofstee wrote: > On Tue, 2007-07-17 at 13:21 +0100, Robert Watson wrote: > >> This is a reminder e-mail that, in the very near future, Giant >> compatibility shims for network protocols will be removed. These shimmed >> allowed Giant to be re-enabeld over the network stack as a result of >> linking in a service that required Giant (now all removed), or by setting >> the debug.mpsafenet variable to 1. This means that the following will no >> longer be present: >> >> debug.mpsafenet sysctl >> debug_mpsafenet global variable >> NET_NEEDS_GIANT() >> NET_LOCK_GIANT(), NET_UNLOCK_GIANT(), NET_ASSERT_GIANT() >> NET_CALLOUT_MPSAFE >> >> All instances of NET_{LOCK,UNLOCK,ASSERT}_GIANT() will be removed as they >> will no be no-ops. > > Ehrm ... i am not 100% sure here but what will this mean for those of us > running qemu on 7.x systems ... if i recall correctly qemu requires aio for > at least DMA which on 6.x at least still issues below warning when > kldloaded: > > WARNING: Network stack Giant-free, but aio requires Giant. > Consider adding 'options NET_WITH_GIANT' or setting > debug.mpsafenet=0 > > Does this removal of debug.mpsafenet mean that aio on CURRENT is now GIANT > free .. or does this mean that we'll be seeing problems with qemu on CURRENT > ? I believe that davidxu did the work in 7.0 to make aio MPSAFE -- you should not get the above warning with 7.x, only 6.x. The warning is generated by NET_NEEDS_GIANT("aio") in vfs_aio.c, and as of last week, there are no NET_NEEDS_GIANT() callers in 7.x (hence removing the infrastructure for it). Robert N M Watson Computer Laboratory University of Cambridge