[xorg-edgers] Synaptics driver crashes KDE touchpad control module

Bug #1002736 reported by z
104
This bug affects 23 people
Affects Status Importance Assigned to Milestone
synaptiks (Ubuntu)
Fix Released
Medium
Philip Muškovac

Bug Description

After updating to the latest packages in xorg-edgers, the KCM for the touchpad crashes -- or, more precisely, causes a segfault 11 in kcmshell4. I had to revert to an earlier version of the driver. Also, tap-to-click doesn't work.

Broken version:
1.6.99+git20120521.a9d247d0-0ubuntu0sarvatt~precise

Working version:
1.6.0-0ubuntu1~precise1

Here's the backtrace from KDE's crash handler... probably not useful, let me know if you need something more/different:

Application: KDE Control Module (kcmshell4), signal: Segmentation fault
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[KCrash Handler]
#6 0x00007f9b65fcca1c in KAboutData::~KAboutData() () from /usr/lib/libkdecore.so.5
#7 0x00007f9b551c2a76 in ?? () from /usr/lib/python2.7/dist-packages/PyKDE4/kdecore.so
#8 0x00007f9b54a15fb4 in ?? () from /usr/lib/python2.7/dist-packages/sip.so
#9 0x00007f9b54a167d9 in ?? () from /usr/lib/python2.7/dist-packages/sip.so
#10 0x00007f9b55d94336 in ?? () from /usr/lib/libpython2.7.so.1.0
#11 0x00007f9b55dc683f in ?? () from /usr/lib/libpython2.7.so.1.0
#12 0x00007f9b54a15d57 in ?? () from /usr/lib/python2.7/dist-packages/sip.so
#13 0x00007f9b54a16742 in ?? () from /usr/lib/python2.7/dist-packages/sip.so
#14 0x00007f9b54a167e1 in ?? () from /usr/lib/python2.7/dist-packages/sip.so
#15 0x00007f9b55d94336 in ?? () from /usr/lib/libpython2.7.so.1.0
#16 0x00007f9b55dc63d2 in ?? () from /usr/lib/libpython2.7.so.1.0
#17 0x00007f9b55dc6aab in ?? () from /usr/lib/libpython2.7.so.1.0
#18 0x00007f9b55dc6abb in ?? () from /usr/lib/libpython2.7.so.1.0
#19 0x00007f9b55dc07ff in PyDict_DelItem () from /usr/lib/libpython2.7.so.1.0
#20 0x00007f9b55dc0a2c in PyDict_DelItemString () from /usr/lib/libpython2.7.so.1.0
#21 0x00007f9b55d00b8c in PyEval_EvalFrameEx () from /usr/lib/libpython2.7.so.1.0
#22 0x00007f9b55cd0605 in PyEval_EvalCodeEx () from /usr/lib/libpython2.7.so.1.0
#23 0x00007f9b55d058c0 in PyEval_EvalFrameEx () from /usr/lib/libpython2.7.so.1.0
#24 0x00007f9b55cd0605 in PyEval_EvalCodeEx () from /usr/lib/libpython2.7.so.1.0
#25 0x00007f9b55d058c0 in PyEval_EvalFrameEx () from /usr/lib/libpython2.7.so.1.0
#26 0x00007f9b55cd0605 in PyEval_EvalCodeEx () from /usr/lib/libpython2.7.so.1.0
#27 0x00007f9b55cd07bd in ?? () from /usr/lib/libpython2.7.so.1.0
#28 0x00007f9b55db4e83 in PyObject_Call () from /usr/lib/libpython2.7.so.1.0
#29 0x00007f9b55db57d7 in PyEval_CallObjectWithKeywords () from /usr/lib/libpython2.7.so.1.0
#30 0x00007f9b561882ac in ?? () from /usr/lib/kde4/kpythonpluginfactory.so
#31 0x00007f9b5618914b in ?? () from /usr/lib/kde4/kpythonpluginfactory.so
#32 0x00007f9b669e7708 in KCModuleLoader::loadModule(KCModuleInfo const&, KCModuleLoader::ErrorReporting, QWidget*, QStringList const&) () from /usr/lib/libkcmutils.so.4
#33 0x00007f9b669ec5f8 in ?? () from /usr/lib/libkcmutils.so.4
#34 0x00007f9b669ed315 in KCModuleProxy::realModule() const () from /usr/lib/libkcmutils.so.4
#35 0x00007f9b669ed619 in KCModuleProxy::useRootOnlyMessage() const () from /usr/lib/libkcmutils.so.4
#36 0x00007f9b669e97c4 in KCMultiDialog::addModule(KCModuleInfo const&, KPageWidgetItem*, QStringList const&) () from /usr/lib/libkcmutils.so.4
#37 0x00007f9b66fe5c69 in kdemain () from /usr/lib/kde4/libkdeinit/libkdeinit4_kcmshell4.so
#38 0x00007f9b66c2e76d in __libc_start_main () from /lib/x86_64-linux-gnu/libc.so.6
#39 0x0000000000400671 in _start ()

Info about my system...

$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 12.04 LTS
Release: 12.04
Codename: precise

$ uname -a
Linux x1 3.4.0-2-generic #6-Ubuntu SMP Thu May 17 00:37:57 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux

$ kde4-config --version
Qt: 4.8.1
KDE Development Platform: 4.8.3 (4.8.3)
kde4-config: 1.0

$ apt-cache policy kde-config-touchpad
kde-config-touchpad:
  Installed: 0.8.1-1ubuntu1
  Candidate: 0.8.1-1ubuntu1
  Version table:
 *** 0.8.1-1ubuntu1 0
        500 http://mirror.anl.gov/pub/ubuntu/ precise/main amd64 Packages
        100 /var/lib/dpkg/status

Tags: kubuntu
Revision history for this message
Robert Hooker (sarvatt) wrote :

From a quick look at the source it looks like the problem is that the FastTap and EdgeMotion options were completely removed from the driver and synaptiks is trying to use them unconditionally.

affects: xserver-xorg-input-synaptics (Ubuntu) → synaptiks (Ubuntu)
Revision history for this message
Robert Hooker (sarvatt) wrote :

This is untested because I dont use KDE but you can try this synaptiks package out

https://launchpad.net/~sarvatt/+archive/aqua

Revision history for this message
z (steveriley-deactivatedaccount-deactivatedaccount) wrote :
Download full text (15.6 KiB)

This time, when I run

kcmshell4 kcm_synaptics

I first receive this GUI dialog error (click for image):
https://lh5.googleusercontent.com/-idnLMSGEdLA/T7vF5QfcK0I/AAAAAAAAK5w/6gr0plxWt7M/s607/kcm-synaptiks-error.png

OKing or Canceling out of that raises the GUI KDE crash handler with another segfault 11 in kcmshell4.

The crash handler's backtrace shows this:

Application: KDE Control Module (kcmshell4), signal: Segmentation fault
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[KCrash Handler]
#6 0x00007ff61b273a46 in KAboutData::~KAboutData() () from /usr/lib/libkdecore.so.5
#7 0x00007ff60a3c7a76 in ?? () from /usr/lib/python2.7/dist-packages/PyKDE4/kdecore.so
#8 0x00007ff609c1afb4 in ?? () from /usr/lib/python2.7/dist-packages/sip.so
#9 0x00007ff609c1b7d9 in ?? () from /usr/lib/python2.7/dist-packages/sip.so
#10 0x00007ff60af99336 in ?? () from /usr/lib/libpython2.7.so.1.0
#11 0x00007ff60afcb83f in ?? () from /usr/lib/libpython2.7.so.1.0
#12 0x00007ff609c1ad57 in ?? () from /usr/lib/python2.7/dist-packages/sip.so
#13 0x00007ff609c1b742 in ?? () from /usr/lib/python2.7/dist-packages/sip.so
#14 0x00007ff609c1b7e1 in ?? () from /usr/lib/python2.7/dist-packages/sip.so
#15 0x00007ff60af99336 in ?? () from /usr/lib/libpython2.7.so.1.0
#16 0x00007ff60afcb3d2 in ?? () from /usr/lib/libpython2.7.so.1.0
#17 0x00007ff60afcb61b in ?? () from /usr/lib/libpython2.7.so.1.0
#18 0x00007ff60afcb61b in ?? () from /usr/lib/libpython2.7.so.1.0
#19 0x00007ff60afcb61b in ?? () from /usr/lib/libpython2.7.so.1.0
#20 0x00007ff60afcb61b in ?? () from /usr/lib/libpython2.7.so.1.0
#21 0x00007ff60afcb61b in ?? () from /usr/lib/libpython2.7.so.1.0
#22 0x00007ff60afcbaab in ?? () from /usr/lib/libpython2.7.so.1.0
#23 0x00007ff60af57d37 in ?? () from /usr/lib/libpython2.7.so.1.0
#24 0x00007ff60afd399e in PyDict_SetItem () from /usr/lib/libpython2.7.so.1.0
#25 0x00007ff60afa5478 in PyDict_SetItemString () from /usr/lib/libpython2.7.so.1.0
#26 0x00007ff60afa56a3 in PyImport_Cleanup () from /usr/lib/libpython2.7.so.1.0
#27 0x00007ff60af20fdb in Py_Finalize () from /usr/lib/libpython2.7.so.1.0
#28 0x00007ff61ab6593f in qt_call_post_routines() () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#29 0x00007ff619eeff48 in QApplication::~QApplication() () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#30 0x00007ff61c28d9e0 in kdemain () from /usr/lib/kde4/libkdeinit/libkdeinit4_kcmshell4.so
#31 0x00007ff61bed576d in __libc_start_main () from /lib/x86_64-linux-gnu/libc.so.6
#32 0x0000000000400671 in _start ()

Perhaps more helpfully, there is much more backtrace info in the console window this time:

$ kcmshell4 kcm_synaptiks
Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/synaptiks/kde/widgets/config.py", line 106, in _check_for_changes
    self.configurationChanged.emit(self.is_configuration_changed)
  File "/usr/lib/python2.7/dist-packages/synaptiks/kde/widgets/config.py", line 197, in is_configuration_changed
    return self.__config != self._get_mapping_from_widgets()
  File "/usr/lib/python2.7/_abcoll.py", line 383, in __ne__
    return not (self == other)
  File "/usr/lib/python2.7/_abcoll.py", line 380, in __eq__
  ...

Revision history for this message
Robert Hooker (sarvatt) wrote :

Ok so it also expects circular touchpad support which was also ripped out. I'll make a new synaptiks package now and it should be up soon

Revision history for this message
Robert Hooker (sarvatt) wrote :

The rationale is here

http://lists.x.org/archives/xorg-devel/2012-May/030886.html

The a lot of them have been broken for quite some time and untested, and the driver has so many obscure features it is becoming unmaintainable. If this one works I'll upload it to xorg-edgers, but synaptiks will need to be fixed in the distro for 12.10 because xserver-xorg-input-synaptics will most likely be going into it

Revision history for this message
z (steveriley-deactivatedaccount-deactivatedaccount) wrote :

Well, this time the KCM loads without crashing. Running "kcmshell kcm_synaptiks" from the command line displays this on the console:

Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/synaptiks/kde/widgets/config.py", line 106, in _check_for_changes
    self.configurationChanged.emit(self.is_configuration_changed)
AttributeError: 'TouchpadConfigurationWidget' object has no attribute 'is_configuration_changed'

repeatedly, for a total of 11 times. I can make changes in the GUI, but the "Apply" button never becomes active. Clicking the "OK" button dismisses the GUI but no configuration chages are saved.

Curiously, when this version of Synaptiks is running, it ignores my existing ~/.config/synaptiks/touchpad-config.json file and instead simply reports -- and applies -- the defaults contained within ~/.config/synaptiks/touchpad-defaults.json.

Thanks, Robert, for taking a look at this.

Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in synaptiks (Ubuntu):
status: New → Confirmed
Revision history for this message
Vikrant (vikrant82) wrote :

For me vertical edge scrolling gets broken as well..

Jonathan Riddell (jr)
Changed in synaptiks (Ubuntu):
milestone: none → quantal-alpha-3
tags: added: kubuntu
Revision history for this message
z (steveriley-deactivatedaccount-deactivatedaccount) wrote :

Perhaps it's already known, but in case not... a couple months ago, lunaryorn (Sebastian Wiesner) posted on Github that he's looking for someone else to take over maintenance of Synaptiks.

https://github.com/lunaryorn/synaptiks/issues/55

On my Quantal box, Synaptiks 0.8.1 works with xserver-xorg-input-synaptics version 1.6.2-1ubuntu2. However, the driver in Quantal-proposed, 1.6.3, causes Synaptiks to fail.

Revision history for this message
Philip Muškovac (yofel) wrote :

We can add the patch from 1039261 #7 once the archive is open for Raring, too late for Quantal now. That'll have to live with a backport as I don't see a reason to make a SRU out of this. Works fine with synaptics 1.6.2.

Changed in synaptiks (Ubuntu):
importance: Undecided → Medium
milestone: quantal-alpha-3 → none
status: Confirmed → Triaged
Revision history for this message
z (steveriley-deactivatedaccount-deactivatedaccount) wrote :

Sounds good.

Philip Muškovac (yofel)
Changed in synaptiks (Ubuntu):
assignee: nobody → Philip Muškovac (yofel)
status: Triaged → In Progress
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package synaptiks - 0.8.1-1ubuntu3

---------------
synaptiks (0.8.1-1ubuntu3) raring; urgency=low

  * Import 0001-Remove-several-features-that-will-no-longer-be-expos.patch
    from upstream and adjust it to apply against 0.8.1 (LP: #1002736).
    Fixes crashes by accessing features that were removed from
    synaptics 1.7
 -- Philip Muskovac <email address hidden> Fri, 16 Nov 2012 21:14:47 +0100

Changed in synaptiks (Ubuntu):
status: In Progress → Fix Released
Revision history for this message
"Kosmonaut" Bernd Müller (bernado-tornado) wrote :
Download full text (24.1 KiB)

I am still having this issue on my laptop.
Synaptiks crashes on my computer:

kde4-config --version
Qt: 4.8.3
KDE: 4.9.3
kde4-config: 1.0

apt-cache policy kde-config-touchpad
kde-config-touchpad:
  Installiert: 0.8.1-1ubuntu2
  Kandidat: 0.8.1-1ubuntu2

kcmshell4 kcm_synaptiks
Fontconfig warning: "/etc/fonts/conf.d/50-user.conf", line 9: reading configurations from ~/.fonts.conf is deprecated.
*** glibc detected *** kcmshell4: free(): invalid pointer: 0x000000000133fa30 ***
======= Backtrace: =========
/lib/x86_64-linux-gnu/libc.so.6(+0x7eb96)[0x7f90e27e9b96]
/usr/lib/libkdecore.so.5(_ZN10KAboutDataD1Ev+0x214)[0x7f90e1b56864]
/usr/lib/python2.7/dist-packages/PyKDE4/kdecore.so(+0x18a4b6)[0x7f90d0f9f4b6]
/usr/lib/python2.7/dist-packages/sip.so(+0x6044)[0x7f90d07f1044]
/usr/lib/python2.7/dist-packages/sip.so(+0x7939)[0x7f90d07f2939]
/usr/lib/libpython2.7.so.1.0(+0x12805a)[0x7f90d155405a]
/usr/lib/libpython2.7.so.1.0(+0x16c63f)[0x7f90d159863f]
/usr/lib/python2.7/dist-packages/sip.so(+0x5493)[0x7f90d07f0493]
/usr/lib/python2.7/dist-packages/sip.so(+0x78a2)[0x7f90d07f28a2]
/usr/lib/python2.7/dist-packages/sip.so(+0x7941)[0x7f90d07f2941]
/usr/lib/libpython2.7.so.1.0(+0x12805a)[0x7f90d155405a]
/usr/lib/libpython2.7.so.1.0(+0x16c219)[0x7f90d1598219]
/usr/lib/libpython2.7.so.1.0(+0x16c8cb)[0x7f90d15988cb]
/usr/lib/libpython2.7.so.1.0(+0x16c8db)[0x7f90d15988db]
/usr/lib/libpython2.7.so.1.0(PyDict_DelItem+0xd7)[0x7f90d153db57]
/usr/lib/libpython2.7.so.1.0(PyDict_DelItemString+0x2c)[0x7f90d153defc]
/usr/lib/libpython2.7.so.1.0(PyEval_EvalFrameEx+0x962)[0x7f90d1473c02]
/usr/lib/libpython2.7.so.1.0(PyEval_EvalCodeEx+0x848)[0x7f90d1479c38]
/usr/lib/libpython2.7.so.1.0(PyEval_EvalFrameEx+0x458e)[0x7f90d147782e]
/usr/lib/libpython2.7.so.1.0(PyEval_EvalCodeEx+0x848)[0x7f90d1479c38]
/usr/lib/libpython2.7.so.1.0(PyEval_EvalFrameEx+0x458e)[0x7f90d147782e]
/usr/lib/libpython2.7.so.1.0(PyEval_EvalCodeEx+0x848)[0x7f90d1479c38]
/usr/lib/libpython2.7.so.1.0(+0xa3c76)[0x7f90d14cfc76]
/usr/lib/libpython2.7.so.1.0(PyObject_Call+0x4e)[0x7f90d15491be]
/usr/lib/libpython2.7.so.1.0(PyEval_CallObjectWithKeywords+0x47)[0x7f90d1549ac7]
/usr/lib/kde4/kpythonpluginfactory.so(+0x337d)[0x7f90d192d37d]
/usr/lib/kde4/kpythonpluginfactory.so(+0x43fa)[0x7f90d192e3fa]
/usr/lib/libkcmutils.so.4(_ZN14KCModuleLoader10loadModuleERK12KCModuleInfoNS_14ErrorReportingEP7QWidgetRK11QStringList+0x44a)[0x7f90e254788a]
/usr/lib/libkcmutils.so.4(+0x1f870)[0x7f90e254c870]
/usr/lib/libkcmutils.so.4(_ZNK13KCModuleProxy10realModuleEv+0x45)[0x7f90e254cfc5]
/usr/lib/libkcmutils.so.4(_ZNK13KCModuleProxy18useRootOnlyMessageEv+0x9)[0x7f90e254d2c9]
/usr/lib/libkcmutils.so.4(_ZN13KCMultiDialog9addModuleERK12KCModuleInfoP15KPageWidgetItemRK11QStringList+0x137)[0x7f90e2549647]
/usr/lib/kde4/libkdeinit/libkdeinit4_kcmshell4.so(kdemain+0x1421)[0x7f90e2b51a61]
/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xed)[0x7f90e278c76d]
kcmshell4[0x4006d1]
======= Memory map: ========
00400000-00401000 r-xp 00000000 08:01 1051895 /usr/bin/kcmshell4
00600000-00601000 r--p 00000000 08:01 1051895 ...

Revision history for this message
Gert van Dijk (gertvdijk) wrote :

Bernd: Yes, you're still on 0.8.1-1ubuntu2. The fix is in 0.8.1-1ubuntu3.

If you're on Precise or Quantal, just install this package from Raring available here: http://packages.ubuntu.com/raring/kde-config-touchpad - that works for me.

Revision history for this message
hegemon8 (pantokrata2) wrote :

Works for me as well, Thanks a lot Gents. I simply was reading all those bugs and couldn't figure out that it stil doesn't work. Crashes, and no tapping... Well, read this bug report 10 times... (ok, less, but still) and I figured out it isn't in my repo in Kubuntu 12.10 64, with all multiverse etc enabled. I've installed package as mentioned in comment above... And it made my day :) Thanks once again.

Revision history for this message
"Kosmonaut" Bernd Müller (bernado-tornado) wrote :

@Gert: You are right! The *ubuntu3 package works fine. Thanks for your feedback.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.