From: "Németh Márton" <nm127@freemail.hu>
To: Andi Kleen <andi@firstfloor.org>
Cc: "Zhang, Rui" <rui.zhang@intel.com>,
linux-acpi@vger.kernel.org, LKML <linux-kernel@vger.kernel.org>
Subject: Re: AE_ERROR, ACPI thermal trip point state changed
Date: Wed, 19 Nov 2008 23:20:17 +0100 [thread overview]
Message-ID: <49249121.6050304@freemail.hu> (raw)
In-Reply-To: <8763pwypf5.fsf@basil.nowhere.org>
[-- Attachment #1: Type: text/plain, Size: 783 bytes --]
Hi,
Andi Kleen wrote:
> Németh Márton <nm127@freemail.hu> writes:
>> As of 2.6.27-rc3 the patch is still not included in the mainstream. I
>> hope that this patch was not forgotten completely.
>
> It's already in Linus' tree, will be in rc4.
I compiled and tried 2.6.28-rc5. In the dmesg I get the following message:
[ 63.589603] ACPI Exception (thermal-0538): AE_ERROR, ACPI thermal trip point state changed
[ 63.589669] Please send acpidump to linux-acpi@vger.kernel.org
[ 63.589805] [20080926]
The original patch still applies for 2.6.28-rc5 (with some offsets). This patch
is not included in 2.6.28-rc5, yet. The "AE_ERROR..." message does not appear
any more if I apply the patch. I attached this original patch for easier reference.
Regards,
Márton Németh
[-- Attachment #2: thermal-fix --]
[-- Type: text/plain, Size: 2323 bytes --]
thermal fixup for broken BIOS which has invalid trip points.
ACPI thermal driver only re-evaluate valid trip points.
For the broken BIOS show in
http://bugzilla.kernel.org/show_bug.cgi?id=8544
the active[0] is set to invalid at boot time
and it will not be re-evaluated again.
We can still get a warning message at boot time.
http://marc.info/?l=linux-kernel&m=120496222629983&w=2
Signed-off-by: Zhang Rui<rui.zhang@intel.com>
---
drivers/acpi/thermal.c | 16 ++++++++++++----
1 file changed, 12 insertions(+), 4 deletions(-)
Index: linux-2.6/drivers/acpi/thermal.c
===================================================================
--- linux-2.6.orig/drivers/acpi/thermal.c
+++ linux-2.6/drivers/acpi/thermal.c
@@ -401,7 +401,8 @@ static int acpi_thermal_trips_update(str
}
/* Passive (optional) */
- if (flag & ACPI_TRIPS_PASSIVE) {
+ if (((flag & ACPI_TRIPS_PASSIVE) && tz->trips.passive.flags.valid) ||
+ (flag == ACPI_TRIPS_INIT)) {
valid = tz->trips.passive.flags.valid;
if (psv == -1) {
status = AE_SUPPORT;
@@ -440,8 +441,11 @@ static int acpi_thermal_trips_update(str
memset(&devices, 0, sizeof(struct acpi_handle_list));
status = acpi_evaluate_reference(tz->device->handle, "_PSL",
NULL, &devices);
- if (ACPI_FAILURE(status))
+ if (ACPI_FAILURE(status)) {
+ printk(KERN_WARNING PREFIX
+ "Invalid passive threshold\n");
tz->trips.passive.flags.valid = 0;
+ }
else
tz->trips.passive.flags.valid = 1;
@@ -465,7 +469,8 @@ static int acpi_thermal_trips_update(str
if (act == -1)
break; /* disable all active trip points */
- if (flag & ACPI_TRIPS_ACTIVE) {
+ if ((flag == ACPI_TRIPS_INIT) || ((flag & ACPI_TRIPS_ACTIVE) &&
+ tz->trips.active[i].flags.valid)) {
status = acpi_evaluate_integer(tz->device->handle,
name, NULL, &tz->trips.active[i].temperature);
if (ACPI_FAILURE(status)) {
@@ -497,8 +502,11 @@ static int acpi_thermal_trips_update(str
memset(&devices, 0, sizeof(struct acpi_handle_list));
status = acpi_evaluate_reference(tz->device->handle,
name, NULL, &devices);
- if (ACPI_FAILURE(status))
+ if (ACPI_FAILURE(status)) {
+ printk(KERN_WARNING PREFIX
+ "Invalid active%d threshold\n", i);
tz->trips.active[i].flags.valid = 0;
+ }
else
tz->trips.active[i].flags.valid = 1;
next prev parent reply other threads:[~2008-11-19 22:20 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <47B328AA.1000800@freemail.hu>
2008-02-14 7:44 ` AE_ERROR, ACPI thermal trip point state changed Németh Márton
2008-03-06 7:01 ` Németh Márton
2008-03-05 22:49 ` Zhang, Rui
2008-03-05 22:49 ` Zhang, Rui
2008-03-06 8:05 ` Zhang, Rui
2008-03-06 8:05 ` Zhang, Rui
2008-03-07 6:54 ` Németh Márton
2008-03-07 7:19 ` Zhang, Rui
2008-03-07 7:19 ` Zhang, Rui
2008-03-07 7:24 ` Zhang, Rui
2008-03-08 7:41 ` Németh Márton
2008-03-10 1:52 ` Zhang, Rui
2008-03-10 1:52 ` Zhang, Rui
2008-08-20 9:08 ` Németh Márton
2008-08-20 9:08 ` Németh Márton
2008-08-20 10:02 ` Andi Kleen
2008-08-20 10:02 ` Andi Kleen
2008-11-19 22:20 ` Németh Márton [this message]
2008-11-19 23:22 ` Andi Kleen
2008-11-19 23:22 ` Andi Kleen
2008-12-08 6:04 ` Németh Márton
2008-12-08 6:04 ` Németh Márton
2008-12-08 6:48 ` Zhang Rui
2008-12-08 6:48 ` Zhang Rui
2008-12-08 6:59 ` Németh Márton
2008-12-08 6:59 ` Németh Márton
2009-01-05 6:22 ` Németh Márton
2009-01-15 21:56 ` Len Brown
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=49249121.6050304@freemail.hu \
--to=nm127@freemail.hu \
--cc=andi@firstfloor.org \
--cc=linux-acpi@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=rui.zhang@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.