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