From a431ad578cd5cb534cbf69efb29d89583b970806 Mon Sep 17 00:00:00 2001 From: Jarod Wilson Date: Sat, 4 Jun 2011 14:14:41 -0300 Subject: [PATCH] --- yaml --- r: 254615 b: refs/heads/master c: 94215ccd99eb6e3c8a035c06984630bd7479d963 h: refs/heads/master i: 254613: c4d5b910ca199f3f665460cfc02395440d116185 254611: 0e7e572dea1c1546084826799eb4419e453f093e 254607: 92fc1280213988747a53921e7408d54a8df389cb v: v3 --- [refs] | 2 +- trunk/drivers/media/rc/imon.c | 6 ++++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/[refs] b/[refs] index 4865df34179c..ace1da27918f 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 443b391900469f2c5ec5a354ce305000096a94b7 +refs/heads/master: 94215ccd99eb6e3c8a035c06984630bd7479d963 diff --git a/trunk/drivers/media/rc/imon.c b/trunk/drivers/media/rc/imon.c index 43344fd67130..7136582a8573 100644 --- a/trunk/drivers/media/rc/imon.c +++ b/trunk/drivers/media/rc/imon.c @@ -1590,16 +1590,16 @@ static void imon_incoming_packet(struct imon_context *ictx, /* Only panel type events left to process now */ spin_lock_irqsave(&ictx->kc_lock, flags); + do_gettimeofday(&t); /* KEY_MUTE repeats from knob need to be suppressed */ if (ictx->kc == KEY_MUTE && ictx->kc == ictx->last_keycode) { - do_gettimeofday(&t); msec = tv2int(&t, &prev_time); - prev_time = t; if (msec < ictx->idev->rep[REP_DELAY]) { spin_unlock_irqrestore(&ictx->kc_lock, flags); return; } } + prev_time = t; kc = ictx->kc; spin_unlock_irqrestore(&ictx->kc_lock, flags); @@ -1611,7 +1611,9 @@ static void imon_incoming_packet(struct imon_context *ictx, input_report_key(ictx->idev, kc, 0); input_sync(ictx->idev); + spin_lock_irqsave(&ictx->kc_lock, flags); ictx->last_keycode = kc; + spin_unlock_irqrestore(&ictx->kc_lock, flags); return;