Date: Sun, 22 Aug 2004 21:02:44 +0200 From: Erwin Lansing <erwin@FreeBSD.org> To: Brian Feldman <green@FreeBSD.org> Cc: cvs-all@FreeBSD.org Subject: Re: cvs commit: src/sys/dev/sound/pci maestro.c Message-ID: <20040822190244.GE42943@droso.net> In-Reply-To: <200408221857.i7MIvf8a039929@repoman.freebsd.org> References: <200408221857.i7MIvf8a039929@repoman.freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
[-- Attachment #1 --]
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@lansing.dk>
>
Thanks for looking into this so quickly!
This probably should also go into 5.3.
-erwin
--
_._ _,-'""`-._
Erwin Lansing (,-.`._,'( |\`-/| erwin@lansing.dk
http://droso.org `-.-' \ )-`( , o o) erwin@FreeBSD.org
-bf- `- \`_`"'-
[-- Attachment #2 --]
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.5 (FreeBSD)
iD8DBQFBKO3Uqy9aWxUlaZARAm4GAJ0ZQdhrUCF83HheiE8Vtg/czE6ErgCg3NTN
gYeET8Wqqxs9UtVgOXNnXw0=
=ZQco
-----END PGP SIGNATURE-----
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20040822190244.GE42943>
