From owner-cvs-all Wed Feb 19 16:19:56 2003 Delivered-To: cvs-all@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7321237B401; Wed, 19 Feb 2003 16:19:54 -0800 (PST) Received: from patrocles.silby.com (d179.as4.nwbl0.wi.voyager.net [169.207.139.53]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4A53F43F85; Wed, 19 Feb 2003 16:19:52 -0800 (PST) (envelope-from silby@silby.com) Received: from patrocles.silby.com (localhost [127.0.0.1]) by patrocles.silby.com (8.12.6/8.12.6) with ESMTP id h1K0Spef063390; Wed, 19 Feb 2003 18:28:51 -0600 (CST) (envelope-from silby@silby.com) Received: from localhost (silby@localhost) by patrocles.silby.com (8.12.6/8.12.6/Submit) with ESMTP id h1K0SlaF063387; Wed, 19 Feb 2003 18:28:49 -0600 (CST) X-Authentication-Warning: patrocles.silby.com: silby owned process doing -bs Date: Wed, 19 Feb 2003 18:28:47 -0600 (CST) From: Mike Silbersack To: Andrew Gallatin Cc: Scott Long , src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org Subject: Re: cvs commit: src/sys/dev/aac aac.c aac_pci.c In-Reply-To: <20030219181629.A46948@grasshopper.cs.duke.edu> Message-ID: <20030219182122.N62705@patrocles.silby.com> References: <200302192158.h1JLwYJn025529@repoman.freebsd.org> <20030219161458.T62705@patrocles.silby.com> <20030219181629.A46948@grasshopper.cs.duke.edu> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-cvs-all@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG On Wed, 19 Feb 2003, Andrew Gallatin wrote: > What I did when I made my out-of-tree Myrinet driver MPSAFE was to > basically make my own big dumb lock. Except that the lock is > per-softc, rather than for the whole kernel. Eg, I enter my transmit > routine and acquire my dumb lock, releasing it when I leave. > Similarly for the interrupt routine. My driver is simple, and uses > neither miibus nor busdma, which may be possible places where you > could get into trouble. I've beaten the snot out of it, and seen no > LOR's and no deadlocks, and a huge performance boost -- back to nearly > 80% of 4.x for some netperf workloads from 60% or so (sorry for the > vague generalizations). > > I should probably get the lock in my ioctl routine, but I haven't > bothered so far. > > I'd love to see you make if_xl MPSAFE. > > Drew Ugh, miibus, I had forgotten about that... well, I guess it'll take a bit of work to doublecheck everything. The busdma routines are already MPSAFE, aren't they? I haven't checked, but I'd assume so, given how new they are. :) I tried looking back to find the original message where you talked about the performance boost, but I can't find it now. Refresh my memory; was the speedup present on UP systems as well? I don't have any SMP boxes here, so I'm curious as to what extent I'd be able to benchmark a difference. Note that my intention to lockdown if_xl should by no means stop anyone else from doing so; I have a lot of other things on my plate at the moment. Mike "Silby" Silbersack To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message