[patch] small tty irq race fix

From: Nicolas Pitre (nico@cam.org)
Date: Mon Mar 03 2003 - 13:09:32 EST


--- linux-2.5.63/drivers/char/tty_io.c.orig Mon Feb 24 14:05:34 2003
+++ linux-2.5.63/drivers/char/tty_io.c Mon Mar 3 13:02:31 2003
@@ -1947,17 +1947,17 @@
         if (tty->flip.buf_num) {
                 cp = tty->flip.char_buf + TTY_FLIPBUF_SIZE;
                 fp = tty->flip.flag_buf + TTY_FLIPBUF_SIZE;
- tty->flip.buf_num = 0;
 
                 local_irq_save(flags); // FIXME: is this safe?
+ tty->flip.buf_num = 0;
                 tty->flip.char_buf_ptr = tty->flip.char_buf;
                 tty->flip.flag_buf_ptr = tty->flip.flag_buf;
         } else {
                 cp = tty->flip.char_buf;
                 fp = tty->flip.flag_buf;
- tty->flip.buf_num = 1;
 
                 local_irq_save(flags); // FIXME: is this safe?
+ tty->flip.buf_num = 1;
                 tty->flip.char_buf_ptr = tty->flip.char_buf + TTY_FLIPBUF_SIZE;
                 tty->flip.flag_buf_ptr = tty->flip.flag_buf + TTY_FLIPBUF_SIZE;
         }

Nicolas

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



This archive was generated by hypermail 2b29 : Fri Mar 07 2003 - 22:00:22 EST