cvs commit: src/sys/dev/sound/pci maestro.c

Erwin Lansing erwin at
Sun Aug 22 12:02:46 PDT 2004

On Sun, Aug 22, 2004 at 06:57:41PM +0000, Brian Feldman wrote:
> green       2004-08-22 18:57:41 UTC
>   FreeBSD src repository
>   Modified files:
>     sys/dev/sound/pci    maestro.c 
>   Log:
>   The new contigmalloc code is exposing a lot of misuses of busdma memory
>   allocation. Notably, in this case, the driver tries to allocate several
>   pieces of memory and then fails if the pieces allocated after the first
>   do not come after it physically, and within a specific range (8MB I
>   believe).  Of course, this could just as easily fail for any number of
>   reasons, but it almost always fails now that contiguous allocations start
>   at the end of possible specified memory locations rather than the beginning.
>   Allocate all the possibly-needed memory up front, even though it's a waste,
>   to get around this.  The least bogus solution would be to take the physical
>   address from the first allocation and create a new tag that specified that
>   further allocations must follow it within that 8MB window, then use that
>   when allocating new channels, but that's left for anyone else that really
>   feels like doing it.
>   Tested by:      Erwin Lansing <erwin at>
Thanks for looking into this so quickly!
This probably should also go into 5.3.


                    _._     _,-'""`-._
Erwin Lansing      (,-.`._,'(       |\`-/|    erwin at       `-.-' \ )-`( , o o)    erwin at
                    -bf-      `-    \`_`"'-
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 187 bytes
Desc: not available
Url :

More information about the cvs-all mailing list