From: Pavel Machek Alt-arrow console switch is routinely dropped under high load. This patch fixes it: alt-arrow has to start from console _we want to switch to_, if switch is already pending. drivers/char/keyboard.c | 6 +++++- 1 files changed, 5 insertions(+), 1 deletion(-) diff -puN drivers/char/keyboard.c~alt-arrow-console-switch-fix drivers/char/keyboard.c --- 25/drivers/char/keyboard.c~alt-arrow-console-switch-fix 2004-01-03 11:42:05.000000000 -0800 +++ 25-akpm/drivers/char/keyboard.c 2004-01-03 11:42:05.000000000 -0800 @@ -507,8 +507,12 @@ static void fn_dec_console(struct vc_dat static void fn_inc_console(struct vc_data *vc, struct pt_regs *regs) { int i; + int cur = fg_console; - for (i = fg_console+1; i != fg_console; i++) { + if (want_console != -1) + cur = want_console; + + for (i = cur+1; i != cur; i++) { if (i == MAX_NR_CONSOLES) i = 0; if (vc_cons_allocated(i)) _