]> err.no Git - linux-2.6/commitdiff
[PATCH] powerpc: g5 thermal overtemp bug
authorBenjamin Herrenschmidt <benh@kernel.crashing.org>
Mon, 19 Dec 2005 00:24:53 +0000 (11:24 +1100)
committerLinus Torvalds <torvalds@g5.osdl.org>
Tue, 20 Dec 2005 17:25:33 +0000 (09:25 -0800)
The g5 thermal control for liquid cooled machines has a small bug, when
the temperatures gets too high, it boosts all fans to the max, but
incorrectly sets the liquids pump to the min instead of the max speed,
thus causing the overtemp condition not to clear and the machine to shut
down after a while. This fixes it to set the pumps to max speed instead.
This problem might explain some of the reports of random shutdowns that
some g5 users have been reporting in the past.

Many thanks to Marcus Rothe for spending a lot of time trying various
patches & sending log logs before I found out that typo. Note that
overtemp handling is still not perfect and the machine might still
shutdown, that patch should reduce if not eliminate such occcurences in
"normal" conditions with high load. I'll implement a better handling
with proper slowing down of the CPUs later.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
drivers/macintosh/therm_pm72.c

index 3fc8cdd94c3daa9b4154b8d721b381bb0eb09797..5bb36274a5c6cd474ed97fe0b0e095a023d5a986 100644 (file)
@@ -933,7 +933,7 @@ static void do_monitor_cpu_combined(void)
        if (state0->overtemp > 0) {
                state0->rpm = state0->mpu.rmaxn_exhaust_fan;
                state0->intake_rpm = intake = state0->mpu.rmaxn_intake_fan;
-               pump = state0->pump_min;
+               pump = state0->pump_max;
                goto do_set_fans;
        }