Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 20 Feb 2003 11:35:54 -0500 (EST)
From:      Andrew Gallatin <gallatin@cs.duke.edu>
To:        "Sam Leffler" <sam@errno.com>
Cc:        "Mike Silbersack" <silby@silby.com>, "Scott Long" <scott_long@btc.adaptec.com>, <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:  <15957.1002.862520.429817@grasshopper.cs.duke.edu>
In-Reply-To: <0dcd01c2d8fc$33a49ee0$52557f42@errno.com>
References:  <200302192158.h1JLwYJn025529@repoman.freebsd.org> <20030219161458.T62705@patrocles.silby.com> <20030219181629.A46948@grasshopper.cs.duke.edu> <20030219182122.N62705@patrocles.silby.com> <3E54219C.9030103@btc.adaptec.com> <20030219212343.O64167@patrocles.silby.com> <0d1a01c2d894$c99c0540$52557f42@errno.com> <20030220093631.A48177@grasshopper.cs.duke.edu> <0dcd01c2d8fc$33a49ee0$52557f42@errno.com>

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

Sam Leffler writes:
 > > Sam Leffler [sam@errno.com] wrote:
 > > > > On Wed, 19 Feb 2003, Scott Long wrote:
 > > > >
 > > > > > busdma has been around since 3.0.  It probably needs a couple of
 > hours
 > > > > > of work to lock it down.
 > > > >
 > > > > Hm, icky.  Is anyone in the know wrt busdma looking into handling
 > that?  I
 > > > > don't think we can get much done in the network drivers without
 > touching
 > > > > busdma functions.
 > > > >
 > > >
 > > > Since most bus_dma functions operate on driver-private data locking
 > drivers
 > > > will probably be sufficient to start.  The only issue I know of is that
 > > > bus_dmamem_alloc calls contigmalloc; so there may be an issue there
 > getting
 > > > out from under Giant.
 > > >
 > >
 > > I'm not the most familiar person with the busdma interface.. but..
 > > at least for network drivers, bus_dmamem_alloc() is typically called
 > > for descriptor lists, etc.  Eg, data shared with the nic, and is done
 > > at attach time, right?  Its never called from the transmit or recv
 > > routines.
 > 
 > Correct, for nic drivers you either pre-allocator or you map data associated
 > with mbufs (or private store if you do jumbograms and set them up as
 > externally-managed storage).
 > 
 > In general though, unless you pre-allocate memory you may need to use it at
 > the point where you setup for dma.  The ubsec crypto driver currently uses
 > it when handling asymmetric crypto ops.

What about bouncing?  I assume all bounce buffers are allocated up
front, so that's not a problem, right?

Drew

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?15957.1002.862520.429817>