RE: thermal shutdown

From: Yu, Luming <hidden>
Date: 2004-03-03 11:51:34

It's known issue!

Pavel has the following solution. Let me know whether it works for you

--Luming
--- clean/drivers/acpi/thermal.c	2004-02-05 01:54:00.000000000
+0100
+++ linux/drivers/acpi/thermal.c	2004-02-05 02:24:15.000000000
+0100
@@ -223,8 +223,11 @@
 	tz->last_temperature = tz->temperature;
 
 	status = acpi_evaluate_integer(tz->handle, "_TMP", NULL,
&tz->temperature);
-	if (ACPI_FAILURE(status))
+	if (ACPI_FAILURE(status)) {
+		if (tz->temperature != tz->last_temperature)
+			printk(KERN_ERR "temperature damaged while
processing\n");
 		return -ENODEV;
+	}
 
 	ACPI_DEBUG_PRINT((ACPI_DB_INFO, "Temperature is %lu dK\n",
tz->temperature));
 
@@ -457,7 +460,17 @@
 		return_VALUE(-EINVAL);
 
 	if (tz->temperature >= tz->trips.critical.temperature) {
+		long old_temperature = tz->temperature;
 		ACPI_DEBUG_PRINT((ACPI_DB_WARN, "Critical trip
point\n"));
+
+		result = acpi_thermal_get_temperature(tz);
+		if (!result) {
+			if (tz->temperature <
(tz->trips.critical.temperature - 100)) {
+				printk(KERN_ALERT "ACPI changed its mind
about temperature, was %ld C, now %ld C", 
+
KELVIN_TO_CELSIUS(old_temperature), KELVIN_TO_CELSIUS(tz->temperature));
+				return_VALUE(0);
+			}
+		}
 		tz->trips.critical.flags.enabled = 1;
 	}
 	else if (tz->trips.critical.flags.enabled)


-----Original Message-----
From: <redacted> 
[mailto:acpi-devel-admin-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org] On Behalf Of 
Jakob Praher
Sent: Wednesday, March 03, 2004 7:42 PM
To: <redacted>
Subject: [ACPI] thermal shutdown


hi,

my system: 2.6.3 acpi patched

I have noticed, that at some sudden point in time (especially 
when I am
not working actively ( I mean using input devices )), I receive a
thermal shutdown, because of a (false?) temperature value.

looking under /var/log/kern.log I found  

jaques2:/var/log# cat  kern.log | grep  Critical
Feb 19 16:11:21 jaques2 kernel: Critical temperature reached (123 C),
shutting down.
Feb 19 16:11:22 jaques2 kernel: Critical temperature reached (46 C),
shutting down.
Feb 20 10:47:02 jaques2 kernel: Critical temperature reached (123 C),
shutting down.
Feb 20 10:47:02 jaques2 kernel: Critical temperature reached (44 C),
shutting down.
Mar  2 22:38:27 jaques2 kernel: Critical temperature reached (123 C),
shutting down.
Mar  2 22:38:27 jaques2 kernel: Critical temperature reached (44 C),
shutting do

this temperature always happens to be 123 C.
How is that possible?
I noticed that the acpi_thermal_critical method uses some kind of flag
for enabled disabled, but apparently in any case the shutdown 
user space
app (/sbin/poweroff) is called.
Should this only be the case when the temperature is too high and the
flag (enabled) is set to != 0? Otherwise, what is the point in the
enabled thing. [tz->trips.critical.flags.enabled]

As you can see from my kern.log, the second value is 
drastically lower,
so could this be a weekness in the system, that one sporadically high
value can trigger a shutdown?

thanks
-- Jakob




-------------------------------------------------------
SF.Net is sponsored by: Speed Start Your Linux Apps Now.
Build and deploy apps & Web services for Linux with
a free DVD software kit from IBM. Click Now!
http://ads.osdn.com/?ad_id=1356&alloc_id=3438&op=click
_______________________________________________
Acpi-devel mailing list
Acpi-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org
https://lists.sourceforge.net/lists/listinfo/acpi-devel

-------------------------------------------------------
SF.Net is sponsored by: Speed Start Your Linux Apps Now.
Build and deploy apps & Web services for Linux with
a free DVD software kit from IBM. Click Now!
http://ads.osdn.com/?ad_id56&alloc_id438&op=click
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help