From: Chase Douglas <chase.douglas@canonical.com>
To: Henrik Rydberg <rydberg@euromail.se>
Cc: Jiri Kosina <jkosina@suse.cz>,
Michael Poole <mdpoole@troilus.org>, Tejun Heo <tj@kernel.org>,
linux-input@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH 4/6 v2] HID: magicmouse: remove axis data filtering
Date: Tue, 31 Aug 2010 17:51:09 -0400 [thread overview]
Message-ID: <1283291469.2255.129.camel@mini> (raw)
In-Reply-To: <4C7D767C.8040607@euromail.se>
On Tue, 2010-08-31 at 23:39 +0200, Henrik Rydberg wrote:
> On 08/31/2010 11:27 PM, Chase Douglas wrote:
>
> > On Tue, 2010-08-31 at 23:18 +0200, Henrik Rydberg wrote:
> >> On 08/31/2010 11:16 PM, Chase Douglas wrote:
> >>
> >>> On Tue, 2010-08-31 at 23:06 +0200, Henrik Rydberg wrote:
> >>>> On 08/31/2010 10:58 PM, Chase Douglas wrote:
> >>>>
> >>>>> On Tue, 2010-08-31 at 22:34 +0200, Henrik Rydberg wrote:
> >>>>>> On 08/31/2010 08:41 PM, Chase Douglas wrote:
> >>>>>>
> >>>>>>> The Magic Mouse device is very precise. No driver filtering of input
> >>>>>>> data needs to be performed.
> >>>>>>>
> >>>>>>> Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
> >>>>>>> Acked-by: Michael Poole <mdpoole@troilus.org>
> >>>>>>> ---
> >>>>>>
> >>>>>>
> >>>>>> I am still not sure this is a good idea. Bandwidth from MT devices is a big
> >>>>>> deal. A statement roughly how much data comes out of mtdev (which does the
> >>>>>> filtering for type A devices) before and after this change would be reassuring.
> >>>>>
> >>>>> As it is right now, hid-magicmouse doesn't support MT slots. I think all
> >>>>> the fuzz code ends up comparing in the MT case is between one touch and
> >>>>> another touch, not between one touch's current location and its previous
> >>>>> location. If I'm correct, then it means a fuzz > 0 is incorrect for
> >>>>> non-slotted MT devices.
> >>>>>
> >>>>> In fact, the code in drivers/input/input.c around line 194 looks like it
> >>>>> discards defuzzing in this case, so one could say this patch is making
> >>>>> things more correct :).
> >>>>
> >>>>
> >>>> For type A devices, the filtering is performed in userspace, in mtdev, in the
> >>>> same manner as it would have been performed in the kernel in the MT slot case.
> >>>> Therefore, knowing the amount of messages coming out of mtdev is a direct
> >>>> measurement of the effect of filtering.
> >>>
> >>> Yes, but we're only interested in the kernel driver when reviewing this
> >>> patch. Leaving the fuzz in as it is has no effect right now on ABS_MT_*
> >>> axes. On the other axes, such as the touch orientation, it's probably
> >>> more harmful than good.
> >>
> >>
> >> "We" are interested in knowing if this patch makes any sense, given that
> >> filtering is in actuality performed in userspace, and thus modifying this code
> >> changes the stream rate into userspace applications, thank you.
> >
> > Because in-kernel defuzzing is turned off for ABS_MT_* axes on
> > non-slotted MT devices, there will be no change in the number of events
> > sent to the userspace due to this patch.
> >
> > Maybe I'm missing something more fundamental. In which case, I'll need
> > more details to get it through my dense skull :).
>
>
> All events passes through to mtdev, yes, but mtdev filters a considerable amount
> of events from passing through to X drivers like evdev. Thus, the fuzz values
> reported in the kernel driver impacts the performance in userspace, even if
> filtering is not done in the kernel.
My disconnect was that I didn't understand that the fuzz value in the
kernel is exported to userspace. I thought the defuzzing in mtdev was
independent of the defuzzing in the kernel.
Basically, I don't feel I have the time to do the analysis you want
right now. If you really want, I can just remove this change.
-- Chase
next prev parent reply other threads:[~2010-08-31 21:51 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-08-31 18:41 [PATCH 1/6 v2] HID: magicmouse: don't allow hidinput to initialize the device Chase Douglas
2010-08-31 18:41 ` [PATCH 2/6 v2] HID: magicmouse: move features reports to static array Chase Douglas
2010-08-31 18:41 ` [PATCH 3/6 v2] HID: magicmouse: simplify touch data bit manipulation Chase Douglas
2010-08-31 18:41 ` [PATCH 4/6 v2] HID: magicmouse: remove axis data filtering Chase Douglas
2010-08-31 20:34 ` Henrik Rydberg
2010-08-31 20:58 ` Chase Douglas
2010-08-31 21:06 ` Henrik Rydberg
2010-08-31 21:16 ` Chase Douglas
2010-08-31 21:18 ` Henrik Rydberg
2010-08-31 21:27 ` Chase Douglas
2010-08-31 21:39 ` Henrik Rydberg
2010-08-31 21:51 ` Chase Douglas [this message]
2010-08-31 21:56 ` Chase Douglas
2010-08-31 22:05 ` Henrik Rydberg
2010-08-31 22:29 ` Chase Douglas
2010-08-31 18:41 ` [PATCH 5/6 v2] HID: magicmouse: enable Magic Trackpad support Chase Douglas
2010-08-31 22:00 ` Henrik Rydberg
2010-09-01 1:26 ` Chase Douglas
2010-09-01 0:08 ` Michael Poole
2010-09-01 1:55 ` Chase Douglas
2010-08-31 18:41 ` [PATCH 6/6 v2] HID: magicmouse: Adjust major / minor axes to scale Chase Douglas
2010-08-31 23:45 ` [PATCH 1/6 v2] HID: magicmouse: don't allow hidinput to initialize the device Michael Poole
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=1283291469.2255.129.camel@mini \
--to=chase.douglas@canonical.com \
--cc=jkosina@suse.cz \
--cc=linux-input@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mdpoole@troilus.org \
--cc=rydberg@euromail.se \
--cc=tj@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).