Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

I've got a HP ProBook 5310m laptop with Ubuntu 10.04 (32 bit). When I return from suspend, the fan speed is usually very high: FDTZ sensor reports "90 °C". Yes, the units are wrong, since FDTZ does not report temperature, but fan speed – that's probably just a small bug in reporting. Interestingly, when I plug or unplug the power cable for a moment, the fan speed returns back to normal.

My questions:

  1. Where can I report this problem? Is it about ACPI support in the kernel? What is the address of the relevant bug tracker?
  2. As a workaround for now, how can I programmatically trigger a behavior equivalent to (un)plugging the power cable. More generally, how can I force ACPI to recalculate fan speed? Ideally, I'm looking for something like echo foo > /proc/bar.

Thanks in advance!

share|improve this question
add comment

2 Answers

up vote 0 down vote accepted

In my case, a workaround for now is to issue this command after suspend (as root):

echo 0 > /proc/acpi/fan/FAN5/state

This command switches on a device – sets its power state to D0. Apparently, it can also be used to "reset" a fan that is already on. After that operation, the fan runs at normal speed (30 °C). How did I know which fan to touch? I looked for a fan with "on" status:

grep on /proc/acpi/fan/*/state

It seems that a fairly similar issue has already been added to the Kernel Bug Tracker.

share|improve this answer
add comment

I have Ubuntu 12.04 LTS and HP 8510w laptop. As for some reason I don't have /proc/acpi/fan directory on my computer I did the same trick on /sys/devices/virtual/thermal/cooling_deviceX

I have created following script:

#!/bin/sh


case "$1" in
        resume|thaw)
                for i in $(seq 0 10) ; 
                do 
                        echo "0" > /sys/devices/virtual/thermal/cooling_device${i}/cur_state
                done
;;
esac

and put it in /etc/pm/sleep.d directory. This way every time my laptop goes from suspend to running state all fans are being stopped. I've tested that after this action when the CPU load goes up and things are getting warm fans start properly so there is no risk of overheating. They also slow down when load goes down so everything seems to be fine.

I've looked through different answers and bug reports on the web and it seems that root cause of this problem is related to the fact that thermal management subsystem assumes that fans don't change state after suspend (so they are basically 'off' as they were before suspend), while in reality waking of the computer causes fans to turn on at full speed (at least on some models).

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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