Thinkpad shuts down after 10 minutes of heavy use

Less than two years ago, I bought a Lenovo Thinkpad R500.

When using the CPU heavily, it sometimes decides to reboot (with Ubuntu briefly showing "shutdown" message).

A Linux widget shows me the CPU temperature. The PC usually reboots when the temperature of the first core gets over 100°C, but sometimes it seems that it has not reached 80°C yet.

Since I switched from Ubuntu 2010.10 32bit to Ubuntu 2011.04 64bit, it crashes much more often.

When in the office, I use a laptopcooler.

I underclocked to 800 MHz, and set my fan to always run at maximum speed (with visible results: more noise and more blown air), but it does not prevent crashes from happening:

cpufreq-selector -c 0 -f 800000
cpufreq-selector -c 1 -f 800000
sudo rmmod thinkpad_acpi
sudo modprobe thinkpad_acpi fan_control=1
sudo thinkfan -n -c alwaysmax-thinkfan.conf

There is no dust. I have sprayed air generously in the vents on the sides and under the laptop. I have also cleaned inside after removing the keyboard and frame.

How can I find out what's the problem?


Forget Thinkpad for a moment, It isn't normal for any laptop to crash when at 100% cpu for a long period of time, but it is normal for nearly all machines to shut down, if any monitored component reaches a critical temperature.

It simply means your fans/cooling are not sufficient or up to the job.

Firstly, as Egon said in comments, check for a BIOS update - if others have complained of similar problems, it is usual for manufacturers to release updates that either underclock certain components or increase fan speed/thresholds.

If this doesn't help, you may want to check for dust and dirt that is clogging up fans.

Finally, if you find anyone else with similar problems, you may want to complain direct to the manufacturer.

It is possible that the sensor is wrong, but, it is always hard to prove, other than by opening up and using a thermometer.

... In addition, I am out of the loop, but have read about Linux power issues which would obviously cause more heat to build up - that being said, this should only affect battery life... but, it doesn't solve the underlying issue with regards to the cooling of your laptop.


There is a bug filed in Ubuntu that may be related to this:

https://bugs.launchpad.net/bugs/751689

Some people have reported that they can resolve it by force enabling aspm, or the fan to full speed. I suspect the problem is that these thinkpads have a buggy bios that refuses to run the fan at full speed, and they generate extra heat because the GPU relies on ASPM to queue the GPU to enter a lower power state when it isn't in use, but recent Linux kernels respect the fact that the bios reports that ASPM is not supported, and so disables it, which causes the gpu to put out more heat.


Something that others haven't mentioned so far: is the fan working? Can you hear it start and accelerate as the CPU gets hotter?

Install a sensor monitoring package. lm-sensors provides the command-line sensors command, but you must first run sudo /usr/sbin/sensors-detect — GUI options exist too. Thinkpads have good ACPI support for their fan(s), or at least every one I've owned since 2004 has. One upside of this is that you'll also get CPU temperature gauges. My T61p reports the single fan speed, CPU core temperatures (via the internal sensor), mini PCI (i.e. WLAN card) temperature, mainboard temperatuer and GPU temperature.

If the fan doesn't start, you have your (first) culprit. You'll need to have it replaced. Doing it yourself is possible too, if the machine is out of warranty, but it's an annoying little operation. Do it on a good work surface with good lighting, get a service manual and follow the instructions to the letter. You don't want to compromise that part of the machine.

If the fan does start, can you feel the airflow as it reaches full speed? On many Thinkpads, the exhaust is on the left side, with intakes in the rear and/or underside.

Do you clean the cooling channel regularly? My boss and I have identical Thinkpads, but his used to run 10°C hotter. He's a smoker, and didn't clean the vents regularly. Dust is a great insulator, and even with your fan going full speed, the airflow won't remove enough heat from the heatsink metal. To clean the vents, I use one a heavy duty manual air blower like the ones photographers use (my personal favourite — cheaper than air in a can, friendlier to the environment and surprisingly good exercise). Put the nozzle on the air intake and blow repeatedly. If this is the first time you do this, do it outdoors and/or wear a mask. Insane amounts of dust will come out of the exhaust vent. On mine, plumes come out of the left speaker holes too.

Below are basically musings which probably don't apply to you since you can stop the issue by cooling the laptop and/or reducing the CPU speed. You should almost certainly concentrate on the heat aspect.

If the CPU, GPU etc temperatures are all nominal, the fan turns on freely and does its work, and the machine still crashes when working hard, there are other (sadder) diagnoses. The primary suspects, in decreasing order of likelihood, are: damaged memory, damaged CPU, damaged mainboard, or a PSU that isn't delivering enough power.

You can test the memory easily enough. Just boot into memtest86+, which you can install on Ubuntu (it'll appear on your GRUB boot menu) and let it do its job. If it finds dead memory, you have two options: replace the memory or, if the damage is small, tell Linux not to use the damaged area. If you need to replace memory, make sure your Thinkpad has all its memory off-board. Some have all their RAM on SODIMM slots, others have an amount permanently installed on the mainboard. If your on-board RAM is damaged, you'll have to have the mainboard replaced.

Ditto if the CPU or mainboard are found to be damaged, but I don't know how to make sure. I've never had issues of this sort on my otherwise quite abused Thinkpads.


Two things you can do:

  1. Hardware-side: clean the dust

    As your laptop is about 2 years old, a lot of dust could have built up in the cooling system. You have two options: clean it yourself or give the laptop to a local computer service point for cleaning.

  2. Software-side: try undervolting

Check out the linux-PHC project. Very often, the default voltages of processors are set significantly above the reasonable level. This was the case for my Thinkpad.


Fun fact about Thinkpads (at least my model): the GPU is located physically very close to the CPU and thus is capable of tripping the CPU heat sensor despite the GPU's being configured for a higher temperature. If you set your widget to display GPU as well, you might notice that number being just as high if not higher.

Many models of Thinkpad have "switchable" graphics; if you use the higher-end card under linux, you'll want to install the proprietary Catalyst drivers, as I've found the generic ones have a bug which causes the GPU to heat up rapidly.