Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 19 Feb 2003 18:28:47 -0600 (CST)
From:      Mike Silbersack <silby@silby.com>
To:        Andrew Gallatin <gallatin@cs.duke.edu>
Cc:        Scott Long <scottl@FreeBSD.org>, 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
Message-ID:  <20030219182122.N62705@patrocles.silby.com>
In-Reply-To: <20030219181629.A46948@grasshopper.cs.duke.edu>
References:  <200302192158.h1JLwYJn025529@repoman.freebsd.org>    <20030219161458.T62705@patrocles.silby.com> <20030219181629.A46948@grasshopper.cs.duke.edu>

next in thread | previous in thread | raw e-mail | index | archive | help

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-src" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20030219182122.N62705>