keyboard.c: Stop flooding dmesg with useless warnings

From: Parag Warudkar
Date: Sat Mar 24 2007 - 23:32:42 EST



I use Apple keyboard and mouse which seem to generate events with keycode==0.

keyboard.c floods dmesg endlessly with below messages. This happens at a very fast rate and never stops, leaving the dmesg unusable.

[46591.960000] keyboard.c: can't emulate rawmode for keycode 0
[46591.996000] keyboard.c: can't emulate rawmode for keycode 0
[46592.032000] keyboard.c: can't emulate rawmode for keycode 0
[46592.068000] keyboard.c: can't emulate rawmode for keycode 0
[46592.104000] keyboard.c: can't emulate rawmode for keycode 0
[46592.140000] keyboard.c: can't emulate rawmode for keycode 0
[46592.176000] keyboard.c: can't emulate rawmode for keycode 0
[46592.212000] keyboard.c: can't emulate rawmode for keycode 0
[46592.248000] keyboard.c: can't emulate rawmode for keycode 0

The patch below avoids printing the warning if keycode == KEY_RESERVED.

If a more correct fix is possible please let me know and I will redo this.
(I suspect avoiding call to emulate_raw() with value ranges it cannot emulate might be a better fix?)

Otherwise please consider applying.

Signed-off-by: Parag Warudkar <parag.warudkar@xxxxxxxxx>

--- linux-2.6-wk/drivers/char/keyboard.c 2007-03-24 23:01:19.000000000 -0400
+++ linux-2.6/drivers/char/keyboard.c 2007-03-24 21:43:58.000000000 -0400
@@ -1161,7 +1161,7 @@

if ((raw_mode = (kbd->kbdmode == VC_RAW)) && !hw_raw)
if (emulate_raw(vc, keycode, !down << 7))
- if (keycode < BTN_MISC && keycode != KEY_RESERVED)
+ if (keycode < BTN_MISC)
printk(KERN_WARNING "keyboard.c: can't emulate rawmode for keycode %d\n", keycode);

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