Linux on the IBM / Lenovo ThinkPad X60

Scope:Device review and tips
Written in:2008

Since my older X31 died suddenly at LinuxTag 2007 but I had to travel directly afterwards I ran to a store in Berlin and bought a new Lenovo thinkpad X60. The people in the store were quite nice and recommended the X60 to me, instead of the X60s.

My X60

My X60 has the following data:


I have to admit that I am not very pleased with the device. The most notable drawback is its heat dissipation. The device gets warm in every aspect! It gets warm overall and especially the right handrest in front of the keyboard gets unpleasantly warm - especially annoying during summer causing a sweating hand.
And of course a always spinning fan, which is additionally not especially silent :(
The heat has to come from somewhere and according to physics energy does not come from thin air - this means this heat causes higher battery drain and reduces the uptime of the standard battery (37440mWh) to drain within max. 3h. This is not exactly the lifetime I would expect. Another annoying thing is that the recharge threshold of the embedded controller is way too high! By default it was, IIRC, 98%, which means basically everytime you plug in the notebook to AC the battery gets recharged. DO NOT DO THIS! This will kill your battery within one year of moderate use - benn there done that, trust me. Older Thinkpad models had a much more sane default of 90% which is absolutely OK.

If I would have had the choice, even today, I would rather buy a used X31 thinkpad instead of one of the newer ones.

Tips and hints

Ubuntu Hardy / 1.4.0 slow

After upgrade to Ubuntu Hardy I suddenly found that my X11 was suddenly creepingly slow, the keyboard config was changed though the xorg.conf was the same and some other oddities.

After some chasing the problem I found that Xgl was the problem. The new Ubuntu by default starts the xorg server and another Xgl server, which caused X to screw up, be slow, etc.

I now added a file to my homedir:

which disables the Xgl server startup at session startup and everyting is back to normal.


On this machine the battery life can drastically be extended by carefully tuning your software. A very good tool for finding problems or power-eaters is PowerTop. I can only recommend to use it! This can help you to gain more than 1/2h of extra battery life.

Kernel 2.6.24

Since 2.6.24 has been released I tried it with some interesting results...

The new power saving features like cpuidle and AC97 suspend did not show any results - at first. The reason was that the CPU did almost never enter C3 when idle which causes additional 3W (!) of power drain.

The reason is seemingly a change in the USB UHCI - if I remove uhci_hcd the CPU goes to C3 again. Strangely this was not necessary with 2.6.22 :(

Also the now in vanilla kernel included iwl3945 driver is no good. It has a hard time to associate with APs, if it does it at all, and if it does in 90% of the cases I got not a single packet through. The iwl3945 drivers in 2.6.24 are increadibly old: 1.1.17 whereas the latest version is 1.2.23! But 1.2.23 does not compile with 2.6.24! Geez... what do those guys do?
Well, anyway, there is a compat-wireless project to enable this. But even with the latest version association and transfers are almost impossible - sigh.

IPW3945 is offcially not supported anymore and has the drawback of a binary only userspace daemon, but it works reliably! But IPW3945 does not compile with 2.6.24 anymore :( But there is help. Using the IPW3945 patch makes the driver compile and work again on 2.6.24, cool!

Now I only have to find out why uhci_hcd does not behave anymore. With the 3W extra the machine gets too hot and burns too much battery. And since the integrated Bluetooth module and fingerprint reader are USB1.1 devices - sigh - I need the UHCI.

Any additional hints are absolutely welcome! If you happen to know something more please let me know!