Well... I fixed my problem by modifying the thermal module. Comments welcome. --- linux-orig/drivers/acpi/thermal.c 2004-11-17 10:08:38.799149800 +0000 +++ linux/drivers/acpi/thermal.c 2004-11-16 22:44:53.000000000 +0000 @@ -457,6 +457,11 @@ if (!tz || !tz->trips.critical.flags.valid) return_VALUE(-EINVAL); + if(tz->temperature >= tz->trips.critical.temperature+100){ + printk(KERN_INFO PREFIX "Erroneous critical temperature (%ld C), ignoring.\n", KELVIN_TO_CELSIUS(tz->temperature)); + return_VALUE(-EINVAL); + } + if (tz->temperature >= tz->trips.critical.temperature) { ACPI_DEBUG_PRINT((ACPI_DB_WARN, "Critical trip point\n")); -- Andrew Betts Jasp Computer Services Ltd