On Sat, Feb 17, 2007 at 03:29:31PM +0300, Mockern wrote:
> When data is received from the hardware, it needs to be placed into the tty 
> device's flip buffer. This can be done with the following bit of code:
> 
> for (i = 0; i < data_size; ++i) {
>         if (tty->flip.count >= TTY_FLIPBUF_SIZE)
>                 tty_flip_buffer_push(tty);
>         tty_insert_flip_char(tty, data[i], 0);
> }
> tty_flip_buffer_push(tty);
> 
> This example makes sure there are no buffer overflows in the tty flip buffer 
> as the data is being added. 
> 
> But how it is done in 2.6.17 linux kernel? I did check this "overflow code" 
> in new tty driver's code. This code looks like just removed. But somehow 
> overflow in the tty buffer must be kept.

Well there was a problem in 2.6.16, which was fixed by 2.6.18, although
I am not sure if it was done by 2.6.17.  It would loose characters due
to buffer overflow and not properly checking under high load.  I grabbed
a few patches from the git tree that were added after 2.6.16 to fix the
tty problems I was having.

--
Len Sorensen
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to