pcm timeout (debug output from snd_ich driver)

Conrad J. Sabatier conrads at cox.net
Mon Aug 23 11:29:42 PDT 2004


On Fri, 20 Aug 2004 12:35:58 -0700 (PDT)
Don Lewis <truckman at freebsd.org> wrote:

> On 18 Aug, Conrad J. Sabatier wrote:
> > On Wed, 18 Aug 2004 19:24:58 -0500
> > "Conrad J. Sabatier" <conrads at cox.net> wrote:
> > 
> > Also, I've been meaning to ask: is there no possibility of somehow
> > recovering gracefully from this condition so that the sound device
> > might still be useable (similar to the recovery from ata and other
> > timeouts), rather than leaving the device flat-out broken?
> 
> Only if we know where it is getting lost.
> 
> Try adding a three of global integers variables to ich.c.  Increment
> one of them on entry to inch_intr(), and increment the others in the
> area of the code that calls chn_intr().
> 
> 			debug2++;
>                         if (ch->run) {
>                         	debug3++;
>                                 chn_intr(ch->channel);
>                         }
> 
> Make the variables readable via sysctl with something like the
> following:
> 
> SYSCTL_INT(_debug_ich, OID_AUTO, debug1, CTLFLAG_RD,
> 	&debug1, 0, "Number of times ich_intr() called");
> 
> 
> Run the sound code until it hangs, and then use sysctl to see which if
> any of these variables continue to increment.

Thanks, Don.  I'll give that a try.  Sorry for not replying sooner, but
I very nearly just gave up altogether, started downloading Fedora Core
2, and was *this close* to going ahead and overwriting my FreeBSD amd64
install with it.  But I held off in the hopes that maybe something would
emerge soon.  Seeing Mat is back online gives me some hope.  And I've
also corresponded with Cameron Grant recently.

Still hoping we can resolve this issue.  I really would hate to replace
FreeBSD with Linux.  But sound, and MIDI especially, are very important
to me (I'm an amateur musician with a nice Yamaha MIDI keyboard just
going to waste here), and if it comes down to it, I've already decided
I'm willing to make the switch if necessary.

Hopefully, it *won't* be necessary.  :-)

-- 
Conrad J. Sabatier <conrads at cox.net> -- "In Unix veritas"


More information about the freebsd-current mailing list