From owner-freebsd-current@FreeBSD.ORG Wed Jul 14 20:00:43 2004 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 0DBC116A4D2; Wed, 14 Jul 2004 20:00:43 +0000 (GMT) Received: from cell.sick.ru (cell.sick.ru [217.72.144.68]) by mx1.FreeBSD.org (Postfix) with ESMTP id 41B0243D1F; Wed, 14 Jul 2004 20:00:42 +0000 (GMT) (envelope-from glebius@freebsd.org) Received: from cell.sick.ru (glebius@localhost [127.0.0.1]) by cell.sick.ru (8.12.11/8.12.8) with ESMTP id i6EK0YxL012026 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Thu, 15 Jul 2004 00:00:34 +0400 (MSD) (envelope-from glebius@freebsd.org) Received: (from glebius@localhost) by cell.sick.ru (8.12.11/8.12.11/Submit) id i6EK0YLY012025; Thu, 15 Jul 2004 00:00:34 +0400 (MSD) (envelope-from glebius@freebsd.org) X-Authentication-Warning: cell.sick.ru: glebius set sender to glebius@freebsd.org using -f Date: Thu, 15 Jul 2004 00:00:34 +0400 From: Gleb Smirnoff To: Robert Watson Message-ID: <20040714200034.GC11637@cell.sick.ru> References: <20040714154254.GB9999@cell.sick.ru> Mime-Version: 1.0 Content-Type: text/plain; charset=koi8-r Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.6i cc: current@freebsd.org Subject: Re: Some netgraph node global locking patches X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.1 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: Wed, 14 Jul 2004 20:00:43 -0000 On Wed, Jul 14, 2004 at 12:03:57PM -0400, Robert Watson wrote: R> R> > On Wed, Jul 14, 2004 at 10:25:31AM -0400, Robert Watson wrote: R> > R> > On Wed, Jul 14, 2004 at 12:30:40AM -0400, Robert Watson wrote: R> > R> > R> //depot/vendor/freebsd/src/sys/netgraph/ng_eiface.c R> > R> > R> //depot/vendor/freebsd/src/sys/netgraph/ng_fec.c R> > R> > R> //depot/vendor/freebsd/src/sys/netgraph/ng_iface.c R> > R> > R> > R> > Well, these three are quite straightforward and identical. Look fine. R> > R> R> > R> I was somewhat hoping someone would actually give them a try and R> > R> demonstrate that practice matches the theory. :-) R> > R> > I can test ng_iface. Since change is similar we could assume ng_eiface, R> > ng_fec tested, then. Would it be enough to test on UP hardware? R> R> Yes, as long as you're running with witness and invariants, and can R> exercise each of the code paths that hits mutexes (and return paths) it R> should be sufficient to merge the changes. Well, running 15 such scripts simultaneously didn't cause any panics/LORs: #!/usr/local/bin/bash while (true); do num=`expr \( ${RANDOM} \* 255 \) / 32767` ngctl mkpeer iface dummy inet ngctl shutdown ng${num}: >/dev/null 2>&1 done AFAIK, this LOR can't be related to this mutex: lock order reversal 1st 0xc0766ec0 cdev (cdev) @ /usr/src/sys/kern/kern_conf.c:81 2nd 0xc103a100 system map (system map) @ /usr/src/sys/vm/vm_kern.c:320 -- Totus tuus, Glebius. GLEBIUS-RIPN GLEB-RIPE