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-all mailing list