From: Mauro Carvalho Chehab <mchehab@redhat.com>
To: Kevin Baradon <kevin.baradon@gmail.com>
Cc: linux-media@vger.kernel.org, linux-kernel@vger.kernel.org,
Jarod Wilson <jarod@wilsonet.com>
Subject: Re: [PATCH 2/2] media/rc/imon.c: avoid flooding syslog with "unknown keypress" when keypad is pressed
Date: Thu, 14 Mar 2013 12:18:41 -0300 [thread overview]
Message-ID: <20130314121841.574d2d0f@redhat.com> (raw)
In-Reply-To: <1361737170-4687-3-git-send-email-kevin.baradon@gmail.com>
Em Sun, 24 Feb 2013 21:19:30 +0100
Kevin Baradon <kevin.baradon@gmail.com> escreveu:
> My 15c2:0036 device floods syslog when a keypad key is pressed:
>
> Feb 18 19:00:57 homeserver kernel: imon 5-1:1.0: imon_incoming_packet: unknown keypress, code 0x100fff2
> Feb 18 19:00:57 homeserver kernel: imon 5-1:1.0: imon_incoming_packet: unknown keypress, code 0x100fef2
> Feb 18 19:00:57 homeserver kernel: imon 5-1:1.0: imon_incoming_packet: unknown keypress, code 0x100fff2
> Feb 18 19:00:57 homeserver kernel: imon 5-1:1.0: imon_incoming_packet: unknown keypress, code 0x100fff2
> Feb 18 19:00:57 homeserver kernel: imon 5-1:1.0: imon_incoming_packet: unknown keypress, code 0x100fff2
>
> This patch lowers severity of this message when key appears to be coming from keypad.
>
> Signed-off-by: Kevin Baradon <kevin.baradon@gmail.com>
> ---
> drivers/media/rc/imon.c | 15 ++++++++++++---
> 1 file changed, 12 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/media/rc/imon.c b/drivers/media/rc/imon.c
> index a3e66a0..bca03d4 100644
> --- a/drivers/media/rc/imon.c
> +++ b/drivers/media/rc/imon.c
> @@ -1499,7 +1499,7 @@ static void imon_incoming_packet(struct imon_context *ictx,
> int i;
> u64 scancode;
> int press_type = 0;
> - int msec;
> + int msec, is_pad_key = 0;
> struct timeval t;
> static struct timeval prev_time = { 0, 0 };
> u8 ktype;
> @@ -1562,6 +1562,7 @@ static void imon_incoming_packet(struct imon_context *ictx,
> ((len == 8) && (buf[0] & 0x40) &&
> !(buf[1] & 0x1 || buf[1] >> 2 & 0x1))) {
> len = 8;
> + is_pad_key = 1;
> imon_pad_to_keys(ictx, buf);
> }
>
> @@ -1625,8 +1626,16 @@ static void struct imon_context *ictx,
>
> unknown_key:
> spin_unlock_irqrestore(&ictx->kc_lock, flags);
> - dev_info(dev, "%s: unknown keypress, code 0x%llx\n", __func__,
> - (long long)scancode);
> + /*
> + * On some devices syslog is flooded with unknown keypresses when keypad
> + * is pressed. Lower message severity in that case.
> + */
> + if (!is_pad_key)
> + dev_info(dev, "%s: unknown keypress, code 0x%llx\n", __func__,
> + (long long)scancode);
> + else
> + dev_dbg(dev, "%s: unknown keypad keypress, code 0x%llx\n",
> + __func__, (long long)scancode);
Hmmm... this entire logic looks weird to me. IMO, the proper fix is to
remove this code snippet from imon_incoming_packet():
spin_lock_irqsave(&ictx->kc_lock, flags);
if (ictx->kc == KEY_UNKNOWN)
goto unknown_key;
spin_unlock_irqrestore(&ictx->kc_lock, flags);
and similar logic from other parts of the code, and just let rc_keydown()
to be handled for KEY_UNKNOWN.
rc_keydown() actually produces two input events:
input_event(dev->input_dev, EV_MSC, MSC_SCAN, scancode);
input_event(dev, EV_KEY, code, !!value);
(the last one, indirectly, by calling input_report_key)
In this particular case, the fist event will allow userspace programs
like "rc-keycode -t" to detect that an unknown scancode was produced,
helping the user to properly fill the scancode table for a particular device.
In the case of your remote, you'll likely will want to add support for those
currently unknown scancodes.
Those "unkonwn keypad keypress" type of messages are now obsolete, as users
can get it anytime in userspace, using the appropriate tool (ir-keytable,
with is part of v4l-utils).
Regards,
Mauro
next prev parent reply other threads:[~2013-03-14 15:18 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-02-24 20:19 [PATCH 0/2] Improve imon LCD/VFD driver to better support 15c2:0036 Kevin Baradon
2013-02-24 20:19 ` [PATCH 1/2] media/rc/imon.c: make send_packet() delay configurable Kevin Baradon
2013-03-14 15:01 ` Mauro Carvalho Chehab
2013-03-17 15:06 ` Kevin Baradon
2013-02-24 20:19 ` [PATCH 2/2] media/rc/imon.c: avoid flooding syslog with "unknown keypress" when keypad is pressed Kevin Baradon
2013-03-14 15:18 ` Mauro Carvalho Chehab
2013-03-14 15:18 ` Mauro Carvalho Chehab [this message]
2013-03-17 15:09 ` Kevin Baradon
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20130314121841.574d2d0f@redhat.com \
--to=mchehab@redhat.com \
--cc=jarod@wilsonet.com \
--cc=kevin.baradon@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).