Having found a way to reliably reproduce the issue I vaguely understand
what is happening.

The kernel psmouse driver probes the TouchPad, reognizes it as a
Synaptic touchpad, and performs Synaptic-specific initialization. This
happens regardless of whether the TouchPad is switched off in the BIOS
or not (!).  Then udev recognizes the device and data from the TouchPad
will start appearing on /dev/input/event* (in my case, event5). Then X
gets started and the xinput infrastructure loads its own input drivers
on top of that.

At that point the TouchPad starts to interfere with the physical
buttons. When you touch the TouchPad in a particular manner (e.g. with
your thumb) before you press a button, then release the button, X does
not register a button release event (as per "evtest"), and the button
appears stuck. This happens even if the TouchPad is disabled via xinput
or using "synclient TouchpadOff=1". It does appear that something
somewhere gets confused by the TouchPad button press, even if the
TouchPad is supposed to be disabled. (I have tried a variety of
synclient/xinput properties, none of them make any difference.)

The issue can be worked around by preventing creation of the device
nodes for the TouchPad. Since the BIOS setting to disable the TouchPad
does not work reliably (or at all?), that means working around the
Synaptics probe in the psmouse kernel module.

So below is another workound, which builds on the workaround in #49.
Basically it unloads the kernel psmouse driver, then reloads it with the
"bare" mouse protocol. This way the TouchPad is not recognized as a
TouchPad any longer, but it also means the TrackPoint is also no longer
recognized as a TrackPoint, so the xorg config files need to specify
"PS/2 Generic Mouse".

1. Step 4 of #49 needs to be replaced by:

   Section "InputClass"
     Identifier "TrackPoint"
     MatchProduct "PS/2 Generic Mouse"
     MatchDevicePath "/dev/input/event*"
     Option "EmulateWheel" "1"
     Option "EmulateWheelButton" "2"
     Option "Emulate3Buttons" "0"
     Option "XAxisMapping" "6 7"
     Option "YAxisMapping" "4 5"
     Driver "evdev"
   EndSection

2. In /etc/rc.local add:

   modprobe -r psmouse
   modprobe psmouse proto=bare

With this workaround I can no longer reproduce the problem, also after
sleep/hibernate cycles. Still it remains a nasty workaround: the
TouchPad is dead and system upgrades can easily probably break this
workaround at some point, so I hope that the additional information is
useful in solving the underlying problem.

-- 
You received this bug notification because you are a member of Kernel
Packages, which is subscribed to linux in Ubuntu.
https://bugs.launchpad.net/bugs/1506817

Title:
  left TPP/2 IBM TrackPoint "sticks on" randomly (X250 15.04)

Status in linux package in Ubuntu:
  Confirmed

Bug description:
  I have reported the details of this problem at
  https://answers.launchpad.net/ubuntu-certification/+question/272142

  As summarized on that question:

  X250 analysis:
   I used the command on the X250
    evtest /dev/input/event15 | grep EV_KEY

   I can see the bug, as follows:

  I click on button 1 (left) over and over. When I push the button down,
  I see it register as 1,
  and when I let go of the key, it registers as a 0.

  The bug is that every now and then (once every 20 clicks), when I let go
  of the left mouse button (BIN_LEFT), it does not return to state 0 (it stays 
in state 1).

  This is highly random, but cant be triggered more often, by dragging a
  window, which I do with BIN_LEFT.

  I am using a brand new X250, purchased in late July 2015. The system was 
returned 3 times to IBM repair as I assumed
  this was a hardware error. Now with the above, it seems clear that this is a 
software issue.

  Ubuntu 15.04

  apt-cache policy xserver-xorg-input-synaptics
  xserver-xorg-input-synaptics:
    Installed: 1.8.1-1ubuntu1
    Candidate: 1.8.1-1ubuntu1
    Version table:
   *** 1.8.1-1ubuntu1 0

  ProblemType: Bug
  DistroRelease: Ubuntu 15.04
  Package: xserver-xorg-input-synaptics 1.8.1-1ubuntu1
  ProcVersionSignature: Ubuntu 3.19.0-30.34-generic 3.19.8-ckt6
  Uname: Linux 3.19.0-30-generic x86_64
  ApportVersion: 2.17.2-0ubuntu1.5
  Architecture: amd64
  CurrentDesktop: Unity
  Date: Fri Oct 16 04:52:03 2015
  DistUpgraded: Fresh install
  DistroCodename: vivid
  DistroVariant: ubuntu
  InstallationDate: Installed on 2015-08-15 (61 days ago)
  InstallationMedia: Ubuntu 15.04 "Vivid Vervet" - Release amd64 (20150422)
  MachineType: LENOVO 20CMCTO1WW
  ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-3.19.0-30-generic.efi.signed 
root=UUID=5718b40f-944e-47a3-acda-04e29336d0bc ro quiet splash vt.handoff=7
  SourcePackage: xserver-xorg-input-synaptics
  UdevLog: Error: [Errno 2] No such file or directory: '/var/log/udev'
  UpgradeStatus: No upgrade log present (probably fresh install)
  dmi.bios.date: 06/19/2015
  dmi.bios.vendor: LENOVO
  dmi.bios.version: N10ET36W (1.15 )
  dmi.board.asset.tag: Not Available
  dmi.board.name: 20CMCTO1WW
  dmi.board.vendor: LENOVO
  dmi.board.version: 0B98417 WIN
  dmi.chassis.asset.tag: No Asset Information
  dmi.chassis.type: 10
  dmi.chassis.vendor: LENOVO
  dmi.chassis.version: None
  dmi.modalias: 
dmi:bvnLENOVO:bvrN10ET36W(1.15):bd06/19/2015:svnLENOVO:pn20CMCTO1WW:pvrThinkPadX250:rvnLENOVO:rn20CMCTO1WW:rvr0B98417WIN:cvnLENOVO:ct10:cvrNone:
  dmi.product.name: 20CMCTO1WW
  dmi.product.version: ThinkPad X250
  dmi.sys.vendor: LENOVO
  version.compiz: compiz 1:0.9.12.1+15.04.20150410.1-0ubuntu1
  version.ia32-libs: ia32-libs N/A
  version.libdrm2: libdrm2 2.4.60-2
  version.libgl1-mesa-dri: libgl1-mesa-dri 10.5.9-2ubuntu1~vivid2
  version.libgl1-mesa-dri-experimental: libgl1-mesa-dri-experimental N/A
  version.libgl1-mesa-glx: libgl1-mesa-glx 10.5.9-2ubuntu1~vivid2
  version.xserver-xorg-core: xserver-xorg-core 2:1.17.1-0ubuntu3.1
  version.xserver-xorg-input-evdev: xserver-xorg-input-evdev 1:2.9.0-1ubuntu2
  version.xserver-xorg-video-ati: xserver-xorg-video-ati 1:7.5.0-1ubuntu2
  version.xserver-xorg-video-intel: xserver-xorg-video-intel 
2:2.99.917-1~exp1ubuntu2.2
  version.xserver-xorg-video-nouveau: xserver-xorg-video-nouveau 
1:1.0.11-1ubuntu2build1
  xserver.bootTime: Fri Oct 16 03:31:10 2015
  xserver.configfile: default
  xserver.errors:
   
  xserver.logfile: /var/log/Xorg.0.log
  xserver.outputs:
   product id                                1079 
   vendor                                     LGD
  xserver.version: 2:1.17.1-0ubuntu3.1

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1506817/+subscriptions

-- 
Mailing list: https://launchpad.net/~kernel-packages
Post to     : kernel-packages@lists.launchpad.net
Unsubscribe : https://launchpad.net/~kernel-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to