On Wed, 2003-03-05 at 15:41, Paul Davis wrote:

> i agree. i can't see why it doesn't, unless the LONG_WAIT delays us
> for so long that it looks like a freeze ...

It doesn't, as after hitting the magic sysrq sigterm sequence I can see
the hdsp_fifo_wait's snd_printks appear on a regular basis (looks like
120 bpm). This is not surprising as HDSP_LONG_WAIT is supposed to last
500ms. In fact the timeout should occur  24413/2/60 = circa 186 minutes
later. The code is :

for (i = 0; i < 24413; ++i) {
       hdsp_write(hdsp, HDSP_fifoData, firmware_ptr[i]);
       if (hdsp_fifo_wait (hdsp, 127, HDSP_LONG_WAIT)) {
               snd_printk ("timeout during firmware loading\n");
               return -EIO;
       }
}

If hdsp_fifo_wait fails and returns -1 we go through the whole loop,
thus effectively waiting almost 3 hours.

Thomas





-------------------------------------------------------
This SF.net email is sponsored by: Etnus, makers of TotalView, The debugger 
for complex code. Debugging C/C++ programs can leave you feeling lost and 
disoriented. TotalView can help you find your way. Available on major UNIX 
and Linux platforms. Try it free. www.etnus.com
_______________________________________________
Alsa-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/alsa-devel

Reply via email to