Solved Thinkpad overheating

I have T410 and X220 models, both of them overheat even during installation process and that is the same with NetBSD and OpenBSD also... Operating systems besides *BSD work fine(They are not, see my last reply). Is there any workaround this bug?

Here is my rc.conf:
hostname="bsdbox-t410"
wlans_iwn0="wlan0"
ifconfig_wlan0="WPA DHCP"
# Set dumpdev to "AUTO" to enable crash dumps, "NO" to disable
dumpdev="AUTO"
zfs_enable="YES"
dbus_enable="YES"
kld_list="i915kms acpi_ibm"
webcamd_enable="YES"
slim_enable="YES"
moused_enable="YES"
powerd_enable="YES"
powerd_flags="-a minimum -b minimum"


And sysctl:
# $FreeBSD$
#
# This file is read when going to multi-user and its contents piped thru
# ``sysctl'' to adjust kernel values. ``man 5 sysctl.conf'' for details.
#

# Uncomment this to prevent users from seeing information about processes that
# are being run under another UID.
#security.bsd.see_other_uids=0
vfs.zfs.min_auto_ashift=12

# This PC overheats so fan needs to be at max and cores needs to be
# at lower freq...
dev.acpi_ibm.0.fan=0
dev.acpi_ibm.0.fan_level=8
dev.cpu.0.freq=1199
dev.cpu.1.freq=1199

# Set proper default sound device
hw.snd.default_unit=1

kern.evdev.rcpt_mask=12
 
Last edited:
both of them overheat even during installation process
That's a big no no. If it was during compilation of LLVM for example, then it was different story. Installation process is not resource intensive at all.
Exception: Due to the KARL, the final stage of the OpenBSD (not FreeBSD) installation is resource intensive.

Therefore, you have to open it up. Check the fans, cleanup the dirts and change the CPU thermal paste.
Using a laptop stand could reduce the temperature. Maybe 5-10 centigrades. Use an active one, with one big fan.
 
Thinkpads are quite popular for FreeBSD, I have a x220 too. They work fine..

I think on x220 cpu.lowest is 800 or 900.

What is your room temperature (lol)?
Can you hear the fan (since it is set to full speed)?
 
Can you provide some numbers so we/you can compare, load coretemp or amdtemp based on you cpu:

Code:
kldload coretemp #for intel
or
Code:
kldload amdtemp #for amd

Check CPU temp / freq and fan speed with default values:

Code:
dev.acpi_ibm.0.fan: 1
dev.acpi_ibm.0.fan_level: 0
# dev.cpu.0.freq=1199 # this value doesn't have any affect when powerd enabled
# dev.cpu.1.freq=1199 # this value doesn't have any affect when powerd enabled

Code:
root@phone:~ # sysctl -a | grep temperature
hw.acpi.thermal.tz0.temperature: 68.1C
dev.cpu.1.temperature: 68.7C
dev.cpu.0.temperature: 68.7C

Code:
root@phone:~ # sysctl -a | grep fan
dev.acpi_ibm.0.fan: 1
dev.acpi_ibm.0.fan_level: 0
dev.acpi_ibm.0.fan_speed: 441

Code:
root@phone:~ # sysctl dev.cpu.0.freq
dev.cpu.0.freq: 800

Then check CPU temp/freq and fan speed with your values:
Code:
dev.acpi_ibm.0.fan=0
dev.acpi_ibm.0.fan_level=8
dev.cpu.0.freq=1199 # this value doesn't have any affect when powerd enabled
dev.cpu.1.freq=1199 # this value doesn't have any affect when powerd enabled

Is there a difference with CPU temp/freq and fan speed values?

also try to play with powerd flags and test again
Code:
powerd_flags="-n hiadaptive -a hiadaptive -b adaptive -m 800 -M 1600" # change -m and -M values based on your cpu

Is there a difference for CPU temp / freq and fan speed between these values and your values

Also test with powerd disabled so "dev.cpu.0.freq=1199" will have affect

Edit: also note you can see supported freq levels with : dev.cpu.0.freq_levels, 1199 is not one of them
 
There is vague factor in all of that. How did you reach to the conclusion that it is overheating?
Did you determine the temperature via reading the sysctcl(8) output values, i.e. dev.cpu.*.temperature?
Or you are using your hand? Also keep in mind that the temperature report by intel CPUs may be off by ±15 °C.
 
Okay i have disassembled T410 very carefully, i was reading about probability of copper tube being bent over through time but that isn't the case here. I have replaced old thermal paste with E2 IC Essential Thermal Compound(Cooler Master) i have put rice sized quantity of paste on both chips on CPU, that was the best i could get in this country without ordering something beyond borders. Also, i have cleaned the whole thing from dust and "dust rabbits". I am now reinstalling FreeBSD 13 and i will report back. Situation is a little better but i would like to test it with stress(1)() for 10-20 minutes.

Also, i love this laptop and its no problem to me to replace it but i don't have any real need to do so because it fulfills my requirements. I would like to stick to this hardware especially when i found out that its CPU can be replaced(That is SOO AWESOME. Why aren't there more mobile motherboards like this??!??!?)
 
Okay now the results are okay for me at least.
Under stress(1)() with -c 10 argument temperature is 70(of course under 'more' that full CPU load). I also ran glmark2. And then i ran both. The results are:

stress -c 10 = 70-71 C temp
glmark2 = 72 C temp
stress and glmark2 = 73-74 C temp
idle = aroung 60 C temp(I think its a bit too much but i don't mind a little louder fan, copper tube is hot so its a good sign)

So i just needed to clean this old boy(I will do this to X220 also). I play older games such as Warcraft 3, StarCraft, Diablo 2, Doom 1,2,3, Wolfenstein and WoW on private servers so i think this will be fine. I will mark this thread solved. Thank you all for you replies and suggestions.

ALSO: Earlier i have installed Devuan Linux and i started to watch something on YouTube and the OS gave me the exact same notification about temperature and of course the computer was shut down. I will re-edit the original post regarding the other system besides *BSDs. Alpine Linux was working incredibly good at 45-50 C(The incredible musl and busysbox) but i had problems with starting X server, i don't have much time troubleshooting the problems so i ditched it.
 
ALSO: Earlier i have installed Devuan Linux and i started to watch something on YouTube and the OS gave me the exact same notification about temperature and of course the computer was shut down. I will re-edit the original post regarding the other system besides *BSDs. Alpine Linux was working incredibly good at 45-50 C(The incredible musl and busysbox) but i had problems with starting X server, i don't have much time troubleshooting the problems so i ditched it.
The important question here is: what source do those other tools/OSes use for the temperature and how they determine what temperature is too high?
E.g. using mainboard sensors vs in-die sensors can easily give you a 20° difference and completely flatten out peaks during bursts of high load.

The safest (or correct) way is to get the tjmax (dev.cpu.N.coretemp.tjmax for intel) and compare that to the current temperature or just look at the coretemp.delta values.
Another indicator would be the throttle_log values of each core - modern CPUs don't just "overheat, crash and burn" or need to be shut down, they will throttle their cores (or even completely stall them) until their temperature has dropped. The dev.cpu.N.coretemp.throttle_log counts such events for each core, so if these counters are 0, the CPU never reached temperatures where thermal throttling was engaged (i.e. it never "overheated").

My desktop at work often runs in the high 80°C range during summer e.g. when building some ports; tjmax is 100°C so I really don't care that much... On very few occasions this summer, some of the cores logged a thermal throttle event, but as these are extreme and very rare events I consider that to be acceptable.
 
ALSO: Earlier i have installed Devuan Linux and i started to watch something on YouTube and the OS gave me the exact same notification about temperature and of course the computer was shut down.

Youtube detects your system capabilities, and select the codec accordingly.
AV1 is the default. Higher compression, but more CPU intensive. I think VP9 is the fallback.
Disable the AV1 in the Firefox, and see what will happen.

1. about:config
2. media.av1.enabled
3. true -> false
 
Where I had measurements for five of seven zones (tz0–tz4), how can I discover the location of each zone? HP EliteBook 8570p.
 
Back
Top