ThinkPad X300 and Linux - first impressions and power consumption issues
Posted by George Wright Mon, 29 Dec 2008 01:12:00 GMT
Today I got down and installed Ubuntu 8.10 on this new X300, and things went rather smoothly. I chose to use the ext3 filesystem on the flash disk, and not to create a swap partition (and opted to buy 4GB RAM for it).
In terms of things that work, the list is rather good. The wireless worked out of the box, sleep works, sound works, both batteries are detected, the graphics card works (with 3D acceleration) and general ACPI stuff works.
However, I have noticed a few problems.
First off (and this is really frustrating) - you can’t use the touchpad with the buttons from the TrackPoint (and vice versa). This means you can’t middle-click and drag using the touchpad. It’s frustrating because on my T43p you can, and I got into the habit of doing this because I find the buttons above are more conveniently located than the buttons beneath.
Secondly, it seems that display brightness adjustment sort of works, but keeps tripping over itself. For example, right now my screen is on 75% brightness but I can’t adjust it up or down because the hotkey daemon in KDE 3 thinks it’s on 0% (I’m assuming it’s getting this from ACPI).
Finally (for now) - power consumption seems to be rather high. When I’ve got the display on 0% and the CPU forcibly in powersave and enabled all the powersaving features suggested by powertop, ACPI still reports a power draw of ~12W. In comparison, my X40 drew 6-7W. Whilst I should have tested this before erasing Windows, a quick google search suggests that I should be seeing something more along the lines of 7-8W power draw.
I have also noticed that the fan is pretty much always in the high mode, even when idling, indicating that perhaps the CPU thermal management isn’t working properly. I understand the Intel L7100 is a “special” low-voltage processor that only the X300 uses, so perhaps Lenovo have done some crazy software ACPI hacks to thermally manage these special processors?
This is really bugging me because in Windows on a full charge I was estimated 8h remaining, whereas in Linux I’m being estimated ~4-5 hours.

Is there some new method of doing suspend to disk that doesn’t involve the swap partition?
I don’t use suspend to disk, so I have no idea.
Jason: Tux on Ice allows you to suspend to a file.
I have a Thinkpad X200 with basically the same problems as you do. Except for the mouse, which you can fix with a small hack (google). As an end-user I’m actually sticking to Windows because of the power issues in Linux atm. I think we even have the exactly same power draw, even though are systems is slightly different.
Anyway I hope Lenovo maybe submit some patches, but I doubt it’s high priority..
If you’re running Ubuntu that may be the problem. Recent (last year or so) Ubuntu versions run some laptops very hot - my Panasonic shows the same kind of issue with high power draw and high temperatures even when idling.
What’s the small hack? A quick google search turned up nothing.
What distro do you recommend for low power usage?
Yeh the X200’s do have the same issues. There has been a request for information from Lenovo. As yet there is no reply but basically under Vista they do some special driver tricks to get the power usage down. We just aren’t sure what they are yet. A stock ista install (without the lenovo drivers ) is much worse than a default Ubuntu / Fedora install.
I have an X200 and I can get by with the low battery life but the fan-always-on is getting annoying.
I actually have the reverse problem with my trackpoint. On Linux I use
/dev/input/mice, so it’ll read all of the events as a single mouse, but on Windows I can’t use the middle click with the touchpad, only the trackpoint. This is on a T61.Yep, I have got an X300 too. The thing is that the embedded controller just sucks at managing fan speed. Instead, Lenovo has chosen to manage it with a Windows software.
I asked again and again the customer service about it and eventually sent my machine to repair. They kept it for almost one month, and it came back with a brand new install of Vista, but the problem was not fixed: nothing else had changed.
Fortunately, you can find on the web some scripts to control your Thinkpad’s fan.
I miss IBM customer service and my good old X31 very much.
“the CPU forcibly in powersave”
That does not save but waste power. Stick it to ondemand.
I run Ubuntu 8.10 and Windows XP (dual boot) on my X300. The fan issue is the most annoying problem. I notice it in both OS. I use Thinkpad Fan Control under Ubuntu. I also had sent it to customer care. Response: “Works as designed”.
There are lots of comments / reports on the Web. You might want to add your experience to the respective Lenovo forum entry.
Do you really have KDE 3 on 8.10 - or is that just a typo? I dont have your problems with the brightness hot keys. The only glitch is that Ubuntu is not aware of the brightness change when the power cable is plugged or unplugged. It gets readjusted once I hit the hot keys.
My power consumption is around 10-11W once I applied the powertop suggestions and having switched off Bluetooth. With brightness=0 / cpu=powersave I get below 10W.
One other annoyance: the recovery CDs repartition / reformat the whole disk and not just the first partition. So you cannot install Windows dual-boot after having installed Ubuntu.
I use Debian on my X300 and it works without problems. Powertop has some problems with kernel 2.6.27, so I can’t give my current energy usage numbers, but with 2.6.26 it was around 9W when I applied the tricks suggested by powertop. That is with WiFi on and the screen at about two thirds of its maximum value (10 of 15). I can get it down a bit more to about 8W if I really push it, like disabling the wireless connection and lowering the brightness of the screen. For me, the fan is normally turned off when I’m not performing heavy-duty tasks.
I have the same problem with brightness - it has to do with the kernel finding two backlights and adjusting the wrong one. You can change the brightness manually with a command like ‘echo 15 > /sys/class/backlight/acpi_video1/brightness’ (values 0-15 are valid) - I haven’t scripted it yet, but I guess you can just connect that command to the ACPI events generated by the brightness buttons on the laptop. Also, switching to a console and back to X when changing brightness seems to work for many people, including me.
Have you tried using powertop to extend battery life? For me, the X300 simply a perfect laptop: it’s light, hardware works as it’s supposed to (including suspend to RAM/disk) and battery life is good :).
Powersave may not save you all that much power because it may be better to deep sleep for longer (that powersave defeats) by finishing as quickly as possible.
You can read what Red Hat’s power guru Matthew Garrett says here: http://www.codon.org.uk/~mjg59/power/good_practices.html .
Interesting that Debian seems to draw less power. I have been using powertop (as I said) and I’ve now managed to get it down to 9-10W by disabling /everything/. This includes manually setting the fan to 1800rpm, screen on lowest setting, wifi off, all suggestions by powertop, etc.
Which version of Debian are you using? Did you have to apply any special hacks to get various bits of hardware to work?
As for the powersave vs. ondemand debate: I was doing this under no CPU load whatsoever, and I had killed off pretty much every process running. Matthew’s explanation for powersave being rubbish suggests there is a crossover point in terms of load where powersave is worse than ondemand, and that this crossover point is under very low load. In any case, it’s not going to be a huge deal and I take your point.
Yes I do have KDE 3 on 8.10 using a repository that offers it. I’m still not a fan of KDE 4 and it doesn’t really offer me the functionality I use in 3. I did find out after posting this that the brightness keys work in GNOME and KDE 4, so I will be investigating what the problem is.
Hey,
Try tp-fancontrol.
behdad
Don’t know if you’ve tried SATA link power saving already? There are several tips reducing power consumption here:
http://www.thinkwiki.org/wiki/Howto_reducepower_consumption
I have an X300 and I get slightly better power usage than you with Intrepid. My power tweaks are:
Increase writeback timeout to 15 secondsecho 1500 > /proc/sys/vm/dirtywritebackcentisecs
Enable laptop IO batchingecho 5 > /proc/sys/vm/laptop_mode
Drop AHCI link power levelfor ctl in /sys/class/scsihost/host*/linkpowermanagementpolicy; do echo “min_power” > $ctl done
Drop wireless power level (at the cost of latency) echo 5 > /sys/bus/pci/drivers/iwlagn/*/power_level Enable audio power saving (sndhdaintel may be sndac97codec)echo 10 > /sys/module/sndhdaintel/parameters/power_save echo 1 > /dev/dsp
Disable WoL (possibly better done in the BIOS)ethtool -s eth1 wol d
Put fingerprint scanner and USB camera to sleepfor device in /sys/bus/usb/devices/*/power/level; do echo “auto” > $device done
Disable bluetoothecho 0 > /sys/devices/platform/thinkpadacpi/bluetoothenable
I would ignore the suggestions about software fan control and just suck it up. It’s annoying, but a selection of good music will easily drown out the noisiest of fans. (I suggest not using software fan control because bugs or crashes could leave you silently cooking your laptop or something else)
ugh, blog fail. the above powersaving commands were pasted directly from my rc.local, but the hash symbols and some semicolons have been eaten, so you’ll need to apply some braincells to them ;)
thx Chris
I enjoyed reading it. I admiring time and effort you put in your blog, because it is obviously one great place where I can find lot of useful info..