Date: Fri, 24 Mar 2000 09:35:07 -0800 From: Ken Marx <kmarx@bigshed.com> To: Randall Hopper <aa8vb@ipass.net> Cc: freebsd-multimedia@FreeBSD.ORG, Ken Marx <kmarx@bigshed.com> Subject: Re: Lost interrupts in snd0 ? Message-ID: <38DBA74B.C2E3DCB6@bigshed.com> References: <38D823E1.87FDA291@bigshed.com> <20000322225322.A3725@ipass.net> <38D9A470.FFC819DD@bigshed.com> <20000323225809.B2570@ipass.net>
next in thread | previous in thread | raw e-mail | index | archive | help
Randall Hopper wrote:
>
...
>
> Beats me. I'm not sure what you mean by qlen. DMA ring transfer buffers?
>
The code in dmabuf.c reads:
353 while (!PROCESS_ABORTING (out_sleep_flag[dev])
354 && audio_devs[dev]->dmap_out->qlen){
355 int chn;
356
357 out_sleeper[dev] = &chn;
358 DO_SLEEP1(chn, out_sleep_flag[dev], 10 * hz);
359 if (TIMED_OUT (out_sleep_flag[dev]) ) {
360
361 splx(flags);
362
363 return audio_devs[dev]->dmap_out->qlen;
364
365 }
366 }
I never see the aborting condition in my debug trace (not shown in above)
so either 1) dmap_out->qlen is being set correctly and we miss/never-get
an interrupt from the board; or 2) we somehow set/leave qlen incorrectly
set which causes us to wait (for the max 10*hz = 1000 tics) for an interrupt
that never will/should happen. I'm tending to think #1, but mostly don't
understand the code enough to be sure and/or prove it.
> ...(Hopefully someone else with Voxware guts knowledge can
> help out here :-) (i.e. I don't qualify)
Definitely and ditto. I'm going to look into the 3.4-STABLE changes that
Conrad mentions. Let you know if I see any difference.
Btw, I've been able to start testing on a PIII 500mhz 3.4-RELEASE box.
So far don't see any problems, but have yet to really bang on it.
Thanks to all,
k.
--
Ken Marx, kmarx@bigshed.com
We are empowered to guard the keys to the kingdom and get our arms around the
realistic goals.
- http://cgi.bigshed.com/~kmarx/cgi-bin/speak.cgi
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-multimedia" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?38DBA74B.C2E3DCB6>
