On my Thinkpad x201s with an i7, if I utilize all of the CPUs/hyperthreads, the machine can be made to overheat very quickly. This is because of the default level setting of 'auto' in /proc/acpi/ibm/fan. On 'auto', the fan only ever goes up to around 4500rpm, while in 'disengaged' mode it can go as high as 6400rpm. At 4500rpm, the CPU continues to climb until the system is forcibly shutdown at 100C. If I reload thinkpad_acpi like so:
$ sudo rmmod thinkpad_acpi
$ sudo modprobe thinkpad_acpi fan_control=1
Then I can set the fan to disengaged mode manually:
echo "level disengaged" > /proc/acpi/ibm/fan
With this setting, I can utilize all of the CPUs for an extended time and not surpass 85C, still pretty hot but well under the 100C range. Furthermore, setting to level '7' (the supposed max fan speed) runs the fan at ~5300, well below the maximum fan speed.
In maverick this did not seem to be as much of a problem (perhaps because of the lack of the big kernel lock in natty?).
Related bugs:
https://bugzilla.redhat.com/show_bug.cgi?id=675433
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=610722 (against thinkfan package, but demonstrates that other x201 users are having the same problem)
ProblemType: Bug
DistroRelease: Ubuntu 11.04
Package: linux-image-2.6.38-7-generic 2.6.38-7.39
Regression: Yes
Reproducible: Yes
ProcVersionSignature: Ubuntu 2.6.38-7.39-generic 2.6.38
Uname: Linux 2.6.38-7-generic x86_64
AcpiTables:
Error: command ['gksu', '-D', 'Apport', '--', '/usr/share/apport/dump_acpi_tables.py'] failed with exit code 1: GNOME_SUDO_PASS
Sorry, try again.
sudo: 3 incorrect password attempts
AlsaVersion: Advanced Linux Sound Architecture Driver Version 1.0.23.
Architecture: amd64
ArecordDevices:
**** List of CAPTURE Hardware Devices ****
card 0: Intel [HDA Intel], device 0: CONEXANT Analog [CONEXANT Analog]
Subdevices: 1/1
Subdevice #0: subdevice #0
AudioDevicesInUse:
USER PID ACCESS COMMAND
/dev/snd/controlC0: jamie 2641 F.... pulseaudio
/dev/snd/pcmC0D0p: jamie 2641 F...m pulseaudio
CRDA: Error: [Errno 2] No such file or directory
Card0.Amixer.info:
Card hw:0 'Intel'/'HDA Intel at 0xf2520000 irq 43'
Mixer name : 'Intel IbexPeak HDMI'
Components : 'HDA:14f15069,17aa2156,00100302 HDA:80862804,17aa21b5,00100000'
Controls : 12
Simple ctrls : 6
Card29.Amixer.info:
Card hw:29 'ThinkPadEC'/'ThinkPad Console Audio Control at EC reg 0x30, fw 6QHT28WW-1.09'
Mixer name : 'ThinkPad EC 6QHT28WW-1.09'
Components : ''
Controls : 1
Simple ctrls : 1
Card29.Amixer.values:
Simple mixer control 'Console',0
Capabilities: pswitch pswitch-joined penum
Playback channels: Mono
Mono: Playback [on]
Date: Tue Apr 5 11:56:28 2011
EcryptfsInUse: Yes
HibernationDevice: RESUME=UUID=58280e6e-d161-43ea-8593-a89fb7b6851a
InstallationMedia: Ubuntu 10.04 LTS "Lucid Lynx" - Release amd64 (20100427.1)
MachineType: LENOVO 5129CTO
ProcEnviron:
LANGUAGE=en_US:en
PATH=(custom, user)
LANG=en_US.UTF-8
SHELL=/bin/bash
ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-2.6.38-7-generic root=UUID=82571cfb-fdda-4d2f-b708-f8924aa0fe21 ro quiet splash vt.handoff=7
RelatedPackageVersions:
linux-restricted-modules-2.6.38-7-generic N/A
linux-backports-modules-2.6.38-7-generic N/A
linux-firmware 1.49
SourcePackage: linux
UpgradeStatus: Upgraded to natty on 2011-02-24 (39 days ago)
dmi.bios.date: 04/20/2010
dmi.bios.vendor: LENOVO
dmi.bios.version: 6QET44WW (1.14 )
dmi.board.name: 5129CTO
dmi.board.vendor: LENOVO
dmi.board.version: Not Available
dmi.chassis.asset.tag: No Asset Information
dmi.chassis.type: 10
dmi.chassis.vendor: LENOVO
dmi.chassis.version: Not Available
dmi.modalias: dmi:bvnLENOVO:bvr6QET44WW(1.14):bd04/20/2010:svnLENOVO:pn5129CTO:pvrThinkPadX201s:rvnLENOVO:rn5129CTO:rvrNotAvailable:cvnLENOVO:ct10:cvrNotAvailable:
dmi.product.name: 5129CTO
dmi.product.version: ThinkPad X201s
dmi.sys.vendor: LENOVO
So the immediate solution is what?
I chucked this into my /etc/rc.local file before exit 0:
rmmod thinkpad_acpi
modprobe thinkpad_acpi fan_control=1
echo "level 7" > /proc/acpi/ibm/fan
# echo "level disengaged" > /proc/acpi/ibm/fan
# this is being problematic
# echo "level auto" > /proc/acpi/ibm/fan
I ekpt the other settings just in case.