From owner-freebsd-arch@FreeBSD.ORG Thu Jul 26 10:42:12 2007 Return-Path: Delivered-To: arch@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 73F2A16A418; Thu, 26 Jul 2007 10:42:12 +0000 (UTC) (envelope-from anders@FreeBSD.org) Received: from fupp.net (totem.fix.no [80.91.36.20]) by mx1.freebsd.org (Postfix) with ESMTP id 28F2C13C45B; Thu, 26 Jul 2007 10:42:12 +0000 (UTC) (envelope-from anders@FreeBSD.org) Received: from localhost (totem.fix.no [80.91.36.20]) by fupp.net (Postfix) with ESMTP id DF4FE8D9923; Thu, 26 Jul 2007 12:23:28 +0200 (CEST) Received: from fupp.net ([80.91.36.20]) by localhost (totem.fix.no [80.91.36.20]) (amavisd-new, port 10024) with LMTP id JiXpFuhWka-I; Thu, 26 Jul 2007 12:23:28 +0200 (CEST) Received: by fupp.net (Postfix, from userid 1000) id 6179C8D991C; Thu, 26 Jul 2007 12:23:28 +0200 (CEST) Date: Thu, 26 Jul 2007 12:23:28 +0200 From: Anders Nordby To: Robert Watson Message-ID: <20070726102328.GA12293@fupp.net> References: <20070724110908.T83919@fledge.watson.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20070724110908.T83919@fledge.watson.org> X-PGP-Key: http://anders.fix.no/pgp/ X-PGP-Key-FingerPrint: 1E0F C53C D8DF 6A8F EAAD 19C5 D12A BC9F 0083 5956 User-Agent: Mutt/1.5.11 Cc: arch@FreeBSD.org, bz@FreeBSD.org, current@FreeBSD.og, bde@FreeBSD.org, gnn@FreeBSD.org Subject: Re: Removing NET_NEEDS_GIANT: first patch 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: Thu, 26 Jul 2007 10:42:12 -0000 Hi, On Tue, Jul 24, 2007 at 11:17:45AM +0100, Robert Watson wrote: > Attached is the first of a series of patches to start removing the > NET_NEEDS_GIANT and debug.mpsafenet scaffolding. This source code > declaration was used by optionally compiled components to declare a strict > requirement for Giant, and forced Giant over the entire network stack. > debug.mpsafenet could also be set by users in loader.conf in order to > similar force Giant over the network stack, and existed for two reasons: to > allow Giant to be put back over the network stack for debugging purposes, > and to support these recently removed or fixed unsafe components. As such, > this patch removes the following: > > - NET_NEEDS_GIANT() macro > - debug.mpsafenet tunable/sysctl and associated debug_mpsafenet variable, as > well as functions supporting these. > - Use of this variable to control acqusition of Giant in network-related > interrupt handlers and various other paths. I've used and still use debug_mpsafenet to get rid of watchdog timeout problems on a lot of HP Proliant servers, particularly with the bge driver: Dec 21 06:42:51 videovm1 kernel: bge0: watchdog timeout -- resetting Dec 21 06:42:51 videovm1 kernel: bge0: link state changed to DOWN Dec 21 06:42:54 videovm1 kernel: bge0: link state changed to UP This problem goes away with debug.mpsafenet="0", for me. I can try to turn off this setting, and see how it goes. I remember there was something one could do, to get more information about the watchdog error, but can't remember what. Another thing, bde did some watchdog fixes for bge in december 2006. I wonder why those didn't make it into 6.2, which was released in january 2007. Regards, -- Anders.