Hello

* * * * I am running Debian GNU/Linux Lenny/Sid on a Dell D820 laptop. Quite
often (about once every 1.5 days - a somewhat unrepresentative average), the
system shuts down uncleanly due to ACPI temperature trip point. My kernels
are configured to allow this to happen as I do not want the system to get
damaged by excessive heating. However, a peek into /var/log/syslog suggests
that these trip points are not believable (read on). Here are snippets :

------------
May 23 12:57:33 laptop kernel: ACPI: Critical trip point
May 23 12:57:33 laptop kernel: Critical temperature reached (879 C),
shutting down.
May 23 12:57:33 laptop shutdown[6120]: shutting down for system halt
May 23 12:57:33 laptop init: Switching to runlevel: 0
May 23 12:57:35 laptop gconfd (gc-5580): Received signal 15, shutting down
cleanly
May 23 12:57:35 laptop gconfd (gc-5580): Exiting
May 23 12:57:35 laptop hcid[5105]: :1.10 exited without unregistering the
default passkey agent
May 23 12:57:35 laptop kernel: Critical temperature reached (39 C), shutting
down.
-------------
May 30 10:39:20 laptop kernel: Critical temperature reached (3183 C),
shutting down.
May 30 10:39:20 laptop shutdown[1142]: shutting down for system halt
May 30 10:39:21 laptop init: Switching to runlevel: 0
May 30 10:39:22 laptop gconfd (gc-31403): Received signal 15, shutting down
cleanly
May 30 10:39:22 laptop hcid[29674]: :1.111 exited without unregistering the
default passkey agent
May 30 10:39:22 laptop gconfd (gc-31403): Exiting
May 30 10:39:22 laptop kernel: Critical temperature reached (48 C), shutting
down.
------------
Jun *1 14:17:32 laptop kernel: ACPI: Critical trip point
Jun *1 14:17:32 laptop kernel: Critical temperature reached (2159 C),
shutting down.
Jun *1 14:17:33 laptop shutdown[30965]: shutting down for system halt
Jun *1 14:17:33 laptop init: Switching to runlevel: 0
Jun *1 14:17:35 laptop kernel: Critical temperature reached (45 C), shutting
down.
-----------
Jun *1 23:50:14 laptop kernel: ACPI: Critical trip point
Jun *1 23:50:14 laptop kernel: Critical temperature reached (1135 C),
shutting down.
Jun *1 23:50:15 laptop shutdown[8843]: shutting down for system halt
Jun *1 23:50:16 laptop init: Switching to runlevel: 0
Jun *1 23:50:17 laptop kernel: Critical temperature reached (39 C), shutting
down.
-------------
Jun *7 13:58:58 laptop kernel: [ 4238.476000] Critical temperature reached
(2415 C), shutting down.
Jun *7 13:58:58 laptop shutdown[20518]: shutting down for system halt
Jun *7 13:58:59 laptop init: Switching to runlevel: 0
Jun *7 13:59:00 laptop kernel: [ 4240.500000] Critical temperature reached
(45 C), shutting down.
-----------------
Jun 16 20:05:57 laptop kernel: [16453.864000] ACPI: Critical trip point
Jun 16 20:05:57 laptop kernel: [16453.864000] Critical temperature reached
(5897 C), shutting down.
Jun 16 20:05:57 laptop shutdown[19062]: shutting down for system halt
Jun 16 20:05:57 laptop init: Switching to runlevel: 0
Jun 16 20:05:58 laptop hcid[6013]: :1.12 exited without unregistering the
default passkey agent
Jun 16 20:05:59 laptop kernel: [16455.892000] Critical temperature reached
(34 C), shutting down.
------------------
Jun 20 13:30:43 laptop kernel: [14375.616000] ACPI: Critical trip point
Jun 20 13:30:43 laptop kernel: [14375.616000] Critical temperature reached
(2671 C), shutting down.
Jun 20 13:30:43 laptop shutdown[22390]: shutting down for system halt
Jun 20 13:30:44 laptop init: Switching to runlevel: 0
Jun 20 13:30:45 laptop kernel: [14377.724000] Critical temperature reached
(47 C), shutting down.
-----------------
Jun 25 00:26:34 laptop kernel: [41965.060000] ACPI: Critical trip point
Jun 25 00:26:34 laptop kernel: [41965.060000] Critical temperature reached
(3183 C), shutting down.
Jun 25 00:26:34 laptop shutdown[5168]: shutting down for system halt
Jun 25 00:26:34 laptop init: Switching to runlevel: 0
Jun 25 00:26:36 laptop kernel: [41967.094000] Critical temperature reached
(48 C), shutting down.
----------------
Jun 25 11:03:09 laptop kernel: [ 4651.919000] Critical temperature reached
(2927 C), shutting down.
Jun 25 11:03:09 laptop shutdown[14363]: shutting down for system halt
Jun 25 11:03:09 laptop init: Switching to runlevel: 0
Jun 25 11:03:11 laptop hcid[6058]: :1.12 exited without unregistering the
default passkey agent
Jun 25 11:03:11 laptop kernel: [ 4654.008000] Critical temperature reached
(47 C), shutting down.
------------------

Now, a pattern emerges in all of the above cases. A completely unphysical
temperature is reported (if I was sitting a foot away from something at a
temperature of 3000C, I would know, plus, my laptop would be melting before
my eyes). Shutdown is initiated (as it should if the temperature were that
high). Then about two seconds later, the temperature appears normal, but it
is too late - the shutdown has already begun

I am using Dell's BIOS version A06. With an older BIOS version (A03) on this
laptop, this problem used to be very infrequent (though I cannot say I
looked at /var/log/syslog then). None of my previous linux laptops have
ever shown this kind of wierd behavior. As you may imagine, it is quite
frustrating to have my laptop shutdown on me in the middle of work just
because some braindead sensor / ACPI routine thinks that my laptop is hot
enough to melt silica or even tungsten (at times).

Any suggestions as to what could be going on here and how do I fix this ?

Thanks.