Bug 46661 - Cannot build clickpad-v2 branch (eventcomm.c) with HAVE_MTDEV and HAVE_MULTITOUCH false
Cannot build clickpad-v2 branch (eventcomm.c) with HAVE_MTDEV and HAVE_MULTIT...
Product: xorg
Classification: Unclassified
Component: Input/synaptics
x86-64 (AMD64) Linux (All)
: medium normal
Assigned To: Chase Douglas
Depends on:
  Show dependency treegraph
Reported: 2012-02-26 17:38 UTC by Sean Santos
Modified: 2012-03-13 18:37 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Note You need to log in before you can comment on or make changes to this bug.
Description Sean Santos 2012-02-26 17:38:11 UTC
This is a problem with the current (as of 2/26/2012) clickpad-v2 branch, at http://cgit.freedesktop.org/~cndougla/xf86-input-synaptics/?h=clickpad-v2

EventTouchSlotPreviouslyOpen refers to the priv->num_active_touches and priv->open_slots, but these are not part of the _SynapticsPrivateRec struct if HAVE_MULTITOUCH is false. This function is not even referenced if HAVE_MTDEV is false, so should probably be in an #ifdef HAVE_MTDEV block

Steps to reproduce:

Build driver with HAVE_MULTITOUCH false.

Actual results:

Make fails with compiler error.

Expected results:


Other information:

By putting this function into an #ifdef HAVE_MTDEV block, you can get the build to succeed. However, there are other problems that may or may not be related. The right click button performs a normal (left) click. Tap-to-click does not work. Two-finger scrolling is possible, but appears to send an excessive number events, causing bumps in CPU usage and sometimes crashes. In the latter case the following is repeated several times:

[   807.739] [mi] EQ overflowing. The server is probably stuck in an infinite loop.
[   807.739] 
[   807.739] 0: /usr/bin/X (xorg_backtrace+0x26) [0x566c26]
[   807.739] 1: /usr/bin/X (mieqEnqueue+0x191) [0x547531]
[   807.739] 2: /usr/bin/X (0x400000+0x46fa4) [0x446fa4]
[   807.739] 3: /usr/bin/X (xf86PostButtonEvent+0xdd) [0x481ecd]
[   807.739] 4: /usr/lib/xorg/modules/input/synaptics_drv.so (0x7ff951b29000+0x2fb5) [0x7ff951b2bfb5]
[   807.739] 5: /usr/lib/xorg/modules/input/synaptics_drv.so (0x7ff951b29000+0x5302) [0x7ff951b2e302]
[   807.739] 6: /usr/bin/X (0x400000+0x6ca27) [0x46ca27]
[   807.739] 7: /usr/bin/X (0x400000+0x9267a) [0x49267a]
[   807.739] 8: /lib/libpthread.so.0 (0x7ff956c08000+0xf270) [0x7ff956c17270]
[   807.739] 9: /lib/libc.so.6 (__select+0x13) [0x7ff955b7b313]
[   807.740] 10: /usr/bin/X (WaitForSomething+0x19b) [0x56400b]
[   807.740] 11: /usr/bin/X (0x400000+0x33a22) [0x433a22]
[   807.740] 12: /usr/bin/X (0x400000+0x22f0a) [0x422f0a]
[   807.740] 13: /lib/libc.so.6 (__libc_start_main+0xed) [0x7ff955ac038d]
[   807.740] 14: /usr/bin/X (0x400000+0x231fd) [0x4231fd]
Comment 1 Peter Hutterer 2012-02-26 18:28:47 UTC
These are patches still
Comment 2 Sean Santos 2012-03-03 15:29:29 UTC
(In reply to comment #1)
> These are patches still

True, but I'm not really insisting that they be supported yet, I just wanted to notify Chase about it, I guess, and hadn't a clue how I "should" do that. Also, the #ifdef thing seems like as clear-cut an oversight as it gets.
Comment 3 Peter Hutterer 2012-03-13 18:37:40 UTC
sorry, I didn't even notice I had commented on it. I started with "...still in development" but then changed my mind (though somehow it got committed here)  you're right, this was an oversight and filing a bug is as good as anything here. For next time, just emailing the developer directly (or xorg-devel where the patches are reviewed) is probably the fastest way to get this resolved.

I just merged the clickpad-v3 branch that should've fixed this, please check git master and reopen if necessary.