Thread (13 messages) flat view 13 messages, 4 authors, 2011-11-02

Re: BUG: hid-multitouch causes 10 second delay and error

From: Henrik Rydberg <hidden>
Date: 2011-10-28 14:00:37

Hi Benjamin,
well, most of the comments you in-lined addressed the fact that I
tried to make the smallest patch possible.
Admittedly, HID_QUIRK_HIDINPUT_DROP makes the patch larger, but all
other comments make it smaller.
quoted
+       /* This allows the driver to correctly support devices
+        * that emit events over several HID messages.
+        */
+       hdev->quirks |= HID_QUIRK_NO_INPUT_SYNC;
+
       td->slots = kzalloc(td->maxcontacts * sizeof(struct mt_slot),
                               GFP_KERNEL);
       if (!td->slots) {

In addition to not needing to be moved, this line introduces a race
with hid-input, since the device has already started when this line is
executed.
Well, we should use instead the new input_register callback to avoid
any races.  I've got the patch, I've tested it, but I never sent
it.... shame on me.
I guess it is moot now anyways.
Except a comment in the second patch, I've tested it, and it worked
without any surprises ;-)
The code still mainly follows your initial idea, so of course it
works. ;-)
But I'm not sure we can rewind the tree as those patches are in
for-next since nearly a month.
I'll let you do the reverts, because on my local trees, it was quite
difficult (and I'm still on a 3.0.x, so I can not test against
for-next)
Ok, let's see how Jiri wants to play it, and I can prepare either a
rewind-and-patch or a revert-and-patch or a keep-and-patch set.
quoted
Subject: [PATCH 2/3] hid-input: Drop generic handling of hid-mt multitouch
 devices

The hid-mt devices are recognized by the ContactID field. This patch
sets HID_QUIRK_MULTITOUCH accordingly, and leaves the device to be
picked up by any driver which intercepts the ContactID field.

All in-tree hid-mt drivers intercept the ContactID, so this patch has
no other effect than to skip generic handling of hid-mt devices.
Please add here the link to
http://www.microsoft.com/whdc/device/input/DigitizerDrvs_touch.mspx
to keep the origin of this statement: ContactID means multitouch
Thanks, I will also make sure authorship is preserved where appropriate.

Cheers,
Henrik
--
To unsubscribe from this list: send the line "unsubscribe linux-input" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help