--- linux-2.5-stock/drivers/serial/sn_console.c 2004-09-10 15:06:37.000000000 -0700 +++ linux-2.6.9-rc1-mm5/drivers/serial/sn_console.c 2004-09-13 14:08:03.000000000 -0700 @@ -596,10 +596,15 @@ sysrq_requested = jiffies; sysrq_serial_ptr = sysrq_serial_str; } - continue; /* ignore the whole sysrq string */ + /* + * ignore the whole sysrq string except for the + * leading escape + */ + if (ch != '\e') + continue; } else - sysrq_serial_ptr = sysrq_serial_str; + sysrq_serial_ptr = sysrq_serial_str; #endif /* CONFIG_MAGIC_SYSRQ */ /* record the character to pass up to the tty layer */ @@ -611,8 +616,6 @@ if (tty->flip.count == TTY_FLIPBUF_SIZE) break; } - else { - } port->sc_port.icount.rx++; }