Re: keyboard.c: Stop flooding dmesg with useless warnings

From: Dmitry Torokhov
Date: Sun Mar 25 2007 - 01:15:29 EST


On Saturday 24 March 2007 23:38, Parag Warudkar wrote:
>
> >
> > 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 */
> >
>
> Yikes. Wrong one above. Right one below. Against latest git.
>
> 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?)

Actually the keyboard driver should not emit input events for that key code.
Is this a USB keyboard?

--
Dmitry
-
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/