Comment 7 for bug 1165089

Revision history for this message
Gero Graubner (graubner) wrote :

I just discovered (using Thinkpad L520 with 12.04 LTS, Kernel 3.2.0-53-generic), that there must be something wrong with the CPU frequency scaling.

Found this in the Arch-Linux Wiki:

'If you use CPU frequency scaling, avoid using the "ondemand" governor and use the "performance" governor when possible, as the touchpad may lose sync when the CPU frequency changes."

https://wiki.archlinux.org/index.php/Touchpad_Synaptics#Touchpad_synchronization_issues

If I set the governor to "performance" instead of "ondemand" the sync-faults totaly gone.

If you run Unity you can try the indicator-cpufreq (sudo apt-get install indicator-cpufreq)

Choose "performance" and test it. No stucks and sync-faults.
After going back to "ondemand" the stucks are back.

The gonvernor was always set to "performance" after boot/login, but was switched to "ondemand" after a minute or so (to speed up login speed as much as possible)

As a workaround until (hopefully) a fix is comming:
So, if you want to set the govenor fix to "performance" you have to edit the file: etc/init.d/ondemand (line 27) and change

echo -n ondemand > $CPUFREQ

to

echo -n performance > $CPUFREQ'

or simply paste:
sudo sed -i s/'echo -n ondemand > $CPUFREQ'/'echo -n performance > $CPUFREQ'/g /etc/init.d/ondemand

and reboot.

To switch it back to default "ondemand" paste:
sudo sed -i s/'echo -n performance > $CPUFREQ'/'echo -n ondemand > $CPUFREQ'/g /etc/init.d/ondemand

Gero