6

In my syslog I had:

thermal thermal_zone0: critical temperature reached(102 C),shutting down

I lost data due to this. I would much rather that the system:

  • suspended to RAM, or
  • lowered the clock freq

How can I do that?

I imagine the process responsible for monitoring the temperature is calling a shutdown script. If I can change that to run the suspend-to-RAM, then both the me and the laptop should be happy. So the question is partly: Which process is responsible for doing this shutdown? And how do I configure it?

uname -a
Linux aspire 3.16.0-31-lowlatency #43~14.04.1-Ubuntu SMP PREEMPT Tue Mar 10 20:41:36 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
6
  • 1
    Take a look at cpufreq package, then write a script that checks every N minutes if temperature reached some (some < critical) point, and if so lowers cpu freq.
    – jimmij
    Jun 27 '15 at 18:27
  • 3
    @jimmij On most CPUs these days the CPU itself will slow down when it reaches a threshold lower than the shutdown threshold (the "high" threshold is the slowdown threshold, the "crit" threshold is the shutdown threshold). The slowdown will be logged though, there should be something about it in the kernel logs. Jun 27 '15 at 19:04
  • 1
    Before writing any script inspect your hardware and make sure it gets proper cooling. Jun 27 '15 at 20:56
  • @don_crissti A good script writer can be a terrible hardware guy and might actually worsen the situation simply by inspecting the hardware. So your advice only applies to people who have access to good hardware support.
    – Ole Tange
    Jun 28 '15 at 6:16
  • 1
    "I lost data due to this." How did you lose data? Mar 25 '16 at 21:13
6

From drivers/thermal/thermal_core.c:

    if (trip_type == THERMAL_TRIP_CRITICAL) {
             dev_emerg(&tz->device,
                       "critical temperature reached(%d C),shutting down\n",
                       tz->temperature / 1000);
             orderly_poweroff(true);
    }

So it seems it is not calling a script to handle the situation.

3

This is a really serious message. The computer only does this when there's a cooling problem. Under no circumstance the temperature should reach values this high. This immediate shutdown is an action triggered by the thermal sensor that operates independent of the operating system. It prevents the processor from getting damaged beyond repair. The bottomline is you can't prevent this protection measure and you should not ever want to do this if it had been possible. What you should do first now is checking what's wrong with cooling and solve the problem. I've experienced this problem a few years ago and it turned out to be the paste between the heatsink and the processor.

4
  • The laptop is 1.5 years old, so it is likely that it is dried out thermal paste. But messing with the internals of a laptop is not really my force, and since the shutdown happens rarely, I would much rather have it suspend to RAM.
    – Ole Tange
    Jun 28 '15 at 6:12
  • Well, I can't help you with that. But I know for sure you can't circumvent the emergency shutdown. If the computer gets this hot again the thermal sensor will still trigger an emergency shutdown. So you'll have to do some scripting that somehow limits the temperature rise.
    – wie5Ooma
    Jun 28 '15 at 20:55
  • 2
    @wie5Ooma I think OP's point is that there are other things that could be done to bring the temperature down. The temperature usually gets this high under heavy load, suspend to RAM, wait 1 minute and resume (manually) is a much better solution in most cases. Even just freezing the whole userspace is likely to help. And will be actually much faster than regular poweroff (which can take on the order of minutes, while suspend is usually a matter of seconds).
    – peterph
    Jun 22 '16 at 20:09
  • 1
    I am having this issue with a replacement fan. It turns out I completely ignored the paste! To me, this is the right answer.
    – rytis
    Jun 20 at 14:00

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.