cvs commit: src/sys/dev/sound/isa ad1816.c ess.c mss.c sb16.c
sb8.c src/sys/dev/sound/pci au88x0.c aureal.c csapcm.c ds1.c
emu10k1.c es137x.c fm801.c ich.c maestro3.c solo.c t4dwave.c
via8233.c via82c686.c
Brian Fundakowski Feldman
green at FreeBSD.org
Wed Oct 13 19:14:04 PDT 2004
On Thu, Oct 14, 2004 at 11:03:33AM +0900, Pyun YongHyeon wrote:
> On Wed, Oct 13, 2004 at 10:08:04AM -0400, Brian Fundakowski Feldman wrote:
>
> > > Log:
> > > Audio drivers failed to detect failure condition and attempted to
> > > assign DMA address to the wrong address. It can cause system lockup
> > > or other mysterious errors. Since most sound cards requires low DMA
> > > address(BUS_SPACE_MAXADDR_24BIT) sndbuf_alloc() would fail when the
> > > audio driver is loaded after long running of operations.
> > >
> > > Approved by: jake (mentor)
> > > Reviewed by: truckman, matk
> >
> > Good job fixing all of these; do you notice that they succeed "more
> > often" with the new contigmalloc(9)? (It is the backend of the busdma
> > physical memory allocations.)
> >
>
> Since I have very small set of sound hardware I don't know
> whether it helped or not. But I saw a mail which sounds like
> a DMA buffer allocation issue.
> http://lists.freebsd.org/pipermail/freebsd-multimedia/2004-September/001382.html
>
> There is an another patch for sndbuf_alloc(). I'm waiting for
> Scott's comments.
In this case, adjusting M3_MAXADDR should be tried. Since the allocation
now tries to start at the high end, we're running into seeing all these
conditions where a DMA address which the hardware cannot actually handle
being used. It should be easy enough to guess and check, by halving the
lowaddr (M3_MAXADDR) and seeing whether it works, and repeating.
--
Brian Fundakowski Feldman \'[ FreeBSD ]''''''''''\
<> green at FreeBSD.org \ The Power to Serve! \
Opinions expressed are my own. \,,,,,,,,,,,,,,,,,,,,,,\
More information about the cvs-src
mailing list