From: Maxim Levitsky <maximlevitsky@xxxxxxxxx> The kbd_clear_keys_helper injects the keyup events alright, but it doesn't inject SYN events, and therefore X evdev driver doesn't pick these injected events untill next SYN event. Signed-off-by: Maxim Levitsky <maximlevitsky@xxxxxxxxx> Signed-off-by: Jason Wessel <jason.wessel@xxxxxxxxxxxxx> --- drivers/char/keyboard.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diff --git a/drivers/char/keyboard.c b/drivers/char/keyboard.c index 0c6c641..7df6af5 100644 --- a/drivers/char/keyboard.c +++ b/drivers/char/keyboard.c @@ -368,6 +368,7 @@ static int kbd_clear_keys_helper(struct input_handle *handle, void *data) { unsigned int *keycode = data; input_inject_event(handle, EV_KEY, *keycode, 0); + input_inject_event(handle, EV_SYN, SYN_REPORT, 0); return 0; } -- 1.6.3.3 -- To unsubscribe from this list: send the line "unsubscribe linux-input" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html