Commit 5a411c46 authored by Jesse Barnes's avatar Jesse Barnes Committed by Linus Torvalds

[PATCH] fix sysrq handling bug in sn_console.c

Fix a stupid bug in the sysrq handling in sn_console.c.  Instead of eating
all characters in the sysrq string (preventing them from getting to the tty
layer), only eat those following 'ESC' since that's a pretty important
character for various things.  Please apply before 2.6.9 is released as the
console is very unfriendly to use without it.
Signed-off-by: default avatarJesse Barnes <jbarnes@sgi.com>
Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent a0952e06
......@@ -596,10 +596,15 @@ sn_receive_chars(struct sn_cons_port *port, struct pt_regs *regs,
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 @@ sn_receive_chars(struct sn_cons_port *port, struct pt_regs *regs,
if (tty->flip.count == TTY_FLIPBUF_SIZE)
break;
}
else {
}
port->sc_port.icount.rx++;
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment