Wednesday, November 30, 2011

How to Restore Notebook Synaptics/Touchpad Not Working in Ubuntu 11.10 Oneiric / Linux Mint 12 Lisa

Sometimes the desktop in several Linux distributions freezes for no apparent reason; active windows can still be used, and the mouse pointer can be moved around, but clicking is impossible. Furthermore, your touchpad can no longer be controlled; the ‘Touchpad’ tab disappears from the System / Preferences / Mouse menu. Even if mouse functionality eventually returns, the touchpad remains uncontrollable. This extremely annoying bug occurs randomly and may last for a couple of seconds, or until you restart your X server.

I am facing this problem on a HP Pavilion dv6 Quad Core Edition on Linux Mint 12 Lisa 64-bit.

If you check your system’s log after such an event (/var/log/messages) you will notice a few entries similar to these:

Sep  9 09:38:15 umbra kernel: [ 4939.006198] psmouse.c: DualPoint TouchPad at isa0060/serio1/input0 lost sync at byte 1
Sep  9 09:38:15 umbra kernel: [ 4939.012220] psmouse.c: DualPoint TouchPad at isa0060/serio1/input0 - driver resynched.

Basically this indicates an IRQ conflict between your mouse and your touchpad. This is a Linux kernel bug (I am currently using 2.6.28) and as such it affects most distributions. An easy way to recover both mouse and touchpad functionality without having to restart your X server is restarting the mouse driver. Run the following commands on a terminal window:

sudo rmmod psmouse
sudo modprobe psmouse

If there is no terminal window open, you can use one of the following:

  • In Gnome or KDE, press Alt + F2, type gnome-terminal and press Enter
  • Press Control + Alt + F1, login with your username and password, type the commands, then press Control + Alt + F7 to get back to X

Hopefully a future kernel release will fix this problem for good.

You can learn more about Ubuntu in Ubuntu Unleashed 2011 Edition: Covering 10.10 and 11.04 (6th Edition) !

Source: http://xpapad.wordpress.com/2009/09/09/dealing-with-mouse-and-touchpad-freezes-in-linux/