Robert Findlay wrote:

> Does anyone know what might cause the select command to "skip" or miss
> events?  My current best theory is that however this happens it happens for
> a long enough swatch of time that the rtfifo fills.   If rtf_put fails to
> put bytes to a full fifo ... I'm assuming that select will never retrigger.
>   I'm going to modify my code to "catch" the error condition of a full fifo
> to see if that coincides with the "stall" event. Does this sound like a
> good theory?
>

That's exactly what i discovered. Therefore i check the fifo

if there is enough space to write into. If not, i dismiss the

data.

To check the fifo-level i added some lines to rt_fifo_new.c like this:

/***********************************************************/

int rtf_fifolevel(unsigned int minor)
{
                       return(RTF_LEN (minor));

}
/***********************************************************/

(I'm using a 2.0.29 with rt-linux0.5) .

This is a kind of a workaround, but for me it works for half of

a year now with no further problems. Maybe this can be merged into

the next release ?? Or is there any similar function right now ??

Hope this will help.

Greets,

Oliver Schindler

--

------------------------------------------------------------------------
Every program has at least one bug and can be shortened by at least one
instruction -- from which, by induction, one can deduce that every
program can be reduced to one instruction which doesn't work.

By unknown
------------------------------------------------------------------------



--- [rtl] ---
To unsubscribe:
echo "unsubscribe rtl" | mail [EMAIL PROTECTED] OR
echo "unsubscribe rtl <Your_email>" | mail [EMAIL PROTECTED]
----
For more information on Real-Time Linux see:
http://www.rtlinux.org/~rtlinux/

Reply via email to