From owner-freebsd-bugs@FreeBSD.ORG Thu Nov 4 09:32:23 2004 Return-Path: Delivered-To: freebsd-bugs@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id A9DE716A4CE; Thu, 4 Nov 2004 09:32:23 +0000 (GMT) Received: from a80-126-165-168.adsl.xs4all.nl (a80-126-165-168.adsl.xs4all.nl [80.126.165.168]) by mx1.FreeBSD.org (Postfix) with ESMTP id BC6B043D39; Thu, 4 Nov 2004 09:32:22 +0000 (GMT) (envelope-from devet@devet.org) Received: from adv.devet.org (adv.devet.org [192.168.1.2]) by a80-126-165-168.adsl.xs4all.nl (Postfix) with ESMTP id 63D4AA942; Thu, 4 Nov 2004 10:32:21 +0100 (CET) Received: by adv.devet.org (Postfix, from userid 100) id 5B74417D0B; Thu, 4 Nov 2004 10:32:21 +0100 (CET) Date: Thu, 4 Nov 2004 10:32:21 +0100 From: Arjan de Vet To: FreeBSD-gnats-submit@FreeBSD.org, freebsd-bugs@FreeBSD.org Message-ID: <20041104093221.GA6839@adv.devet.org> References: <20041023121049.A20631938D@adv.devet.org> <200410231220.i9NCKEjC016756@freefall.freebsd.org> <20041101191610.GA1019@adv.devet.org> <20041101202617.GB1020@adv.devet.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20041101202617.GB1020@adv.devet.org> User-Agent: Mutt/1.5.6i Subject: Re: kern/73038: if_sk.c seems to need IFF_NEEDSGIANT on 5.3-BETA/RC1 X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 04 Nov 2004 09:32:23 -0000 I'm happy to report that the following patch by Peter Edwards (posted to a.o. current) fixes the symptoms I reported. My sk0 interface is now running 12+ hours without debug.mpsafenet=0 in /boot/loader.conf without problems. From: Peter Edwards CC: FreeBSD current mailing list CC: freebsd-amd64@freebsd.org Subject: Re: if_sk patch to get more info from people with problems [...] --- /tmp/if_sk.c Tue Nov 2 17:49:26 2004 +++ if_sk.c Tue Nov 2 17:52:20 2004 @@ -1115,12 +1115,14 @@ if ((i < 0) || (i >= SK_JSLOTS)) panic("sk_jfree: asked to free buffer that we don't manage!"); + SK_LOCK(sc_if->sk_softc); entry = SLIST_FIRST(&sc_if->sk_jinuse_listhead); if (entry == NULL) panic("sk_jfree: buffer not in use!"); entry->slot = i; SLIST_REMOVE_HEAD(&sc_if->sk_jinuse_listhead, jpool_entries); SLIST_INSERT_HEAD(&sc_if->sk_jfree_listhead, entry, jpool_entries); + SK_UNLOCK(sc_if->sk_softc); return; } Arjan -- Arjan de Vet, Eindhoven, The Netherlands URL : http://www.devet.org/ Work: http://www.madison-gurkha.com/ (Security, Open Source, Education)