Bug 8544 - ACPI Exception (thermal-0412): AE_NOT_FOUND, Invalid active threshold [0] [20070126] - Clevo D4J
Summary: ACPI Exception (thermal-0412): AE_NOT_FOUND, Invalid active threshold [0] [20...
Alias: None
Product: ACPI
Classification: Unclassified
Component: Other (show other bugs)
Hardware: i386 Linux
: P2 normal
Assignee: Zhang Rui
: 12203 (view as bug list)
Depends on:
Reported: 2007-05-28 02:06 UTC by Márton Németh
Modified: 2009-01-17 04:53 UTC (History)
2 users (show)

See Also:
Kernel Version: 2.6.22-rc3
Tree: Mainline
Regression: ---

Output of acpidump (version 20060606-1) (74.60 KB, text/plain)
2007-05-28 02:08 UTC, Márton Németh
patch vs 2.6.29-rc1 (1.17 KB, patch)
2009-01-15 14:02 UTC, Len Brown
Details | Diff
patch vs 2.6.29-rc1 (2.75 KB, text/x-patch)
2009-01-16 09:56 UTC, Len Brown

Description Márton Németh 2007-05-28 02:06:22 UTC
Most recent kernel where this bug did *NOT* occur:
Distribution: Debian
Hardware Environment: Clevo D41J notebook
Software Environment:
Problem Description:

Sometimes the following message appears in dmesg:

ACPI Exception (thermal-0412): AE_NOT_FOUND, Invalid active threshold [0] [20070126]

The message repeats about every 10 minutes.

Steps to reproduce:
Load thermal kernel module.
Comment 1 Márton Németh 2007-05-28 02:08:16 UTC
Created attachment 11604 [details]
Output of acpidump (version 20060606-1)
Comment 2 Márton Németh 2007-05-28 02:46:04 UTC
There is a typo in the bug report: the laptop model is Clevo D4J and the product
code is D410J.
Comment 3 Zhang Rui 2007-06-04 19:28:22 UTC
It seems to be a buggy bios to me.
"_AC0" method is offered while "_AL0" is not.
It means that the thermal zone has an active trip point while there is
no active device(fan) associated with it.
This offends the ACPI spec so that a warning is thrown out.
A bios update may help.
Comment 4 Márton Németh 2007-06-04 23:43:09 UTC
As far as I know there is no BIOS update available:
Comment 5 Márton Németh 2007-07-17 12:58:27 UTC
As far as I understand offering the _AC0 method and _AL0 method will not change during runtime. However, the current implementation checks for the active device each time the trip point is reached.

Is it possible to check this condition only once at the startup? Does this behaviour allowed by ACPI spec?
Comment 6 Zhang Rui 2007-08-27 00:25:30 UTC
Hi, Marton,

An OEM can reset _ACx and _PSV and notify OSPM to reevaluate the control
methods to retrieve the new policy threshold settings.
And the OEM -provided AML code must execute a Notify(thermal_zone, 0x81)
statement to request OSPM to re-evaluate the policy thresholds by obtaining
the current values for the _ACx and _PSV objects.

This is what I got from the ACPI spec 2.0.
So I think it's necessary for the thermal driver to re-evaluate the _ACx 
method when a notification 0x81 is received.

Reject this bug. :)
Comment 7 Zhang Rui 2009-01-12 18:35:37 UTC
problem fixed by  http://marc.info/?l=linux-acpi&m=120522267418715&w=2
Comment 8 Len Brown 2009-01-15 14:02:07 UTC
Created attachment 19820 [details]
patch vs 2.6.29-rc1

applied this patch from Rui to acpi-test tree
Comment 9 Len Brown 2009-01-15 14:31:40 UTC
Rui,  Márton,
It isn't clear to me that I got the right patch,
as it is not the one mentioned in comment #7,
and that one is not in my mail archives.
Comment 10 Zhang Rui 2009-01-15 17:44:05 UTC
the patch in comment #8 is not good as we should not re-evaluate the _PSL and _ALx method when receiving notification 0x81, according to the ACPI spec.
and the patch in comment #7 is the right fix.
and Marton has tested in a couple of different kernel releases. :p
Comment 11 Len Brown 2009-01-16 09:56:16 UTC
Created attachment 19834 [details]
patch vs 2.6.29-rc1

the previous patch has been reverted from the acpi test tree.

this patch, refreshed from comment #7
has been applied to the acpi test tree.
Comment 12 Len Brown 2009-01-16 11:14:49 UTC
*** Bug 12203 has been marked as a duplicate of this bug. ***
Comment 13 Len Brown 2009-01-16 13:18:30 UTC
shipped in linux-2.6.29-rc2
Comment 14 Márton Németh 2009-01-17 04:53:09 UTC
Linux kernel 2.6.29-rc2 is working correctly on Clevo D4J, product code D410J. Thank you very much for you work!

Note You need to log in before you can comment on or make changes to this bug.