linux-input.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Henrik Rydberg <rydberg@euromail.se>
To: Chase Douglas <chase.douglas@canonical.com>
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 23:39:08 +0200	[thread overview]
Message-ID: <4C7D767C.8040607@euromail.se> (raw)
In-Reply-To: <1283290078.2255.119.camel@mini>

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.

Henrik

  reply	other threads:[~2010-08-31 21:39 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 [this message]
2010-08-31 21:51                 ` Chase Douglas
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=4C7D767C.8040607@euromail.se \
    --to=rydberg@euromail.se \
    --cc=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=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).