[Bugme-new] [Bug 10686] New: critical thermal shutdown regression 2.6.26-rc1 - HP Pavilion dv6700
bugme-daemon at bugzilla.kernel.org
bugme-daemon at bugzilla.kernel.org
Mon May 12 20:04:35 PDT 2008
http://bugzilla.kernel.org/show_bug.cgi?id=10686
Summary: critical thermal shutdown regression 2.6.26-rc1 - HP
Pavilion dv6700
Product: ACPI
Version: 2.5
KernelVersion: 2.6.26-rc1
Platform: All
OS/Version: Linux
Tree: Mainline
Status: NEW
Severity: normal
Priority: P1
Component: BIOS
AssignedTo: acpi_bios at kernel-bugs.osdl.org
ReportedBy: len.brown at intel.com
Regression: 1
Latest working kernel version: 2.6.25
Earliest failing kernel version: 2.6.26-rc1
In 2.6.25 we got this:
ACPI Exception (thermal-0365): AE_BAD_DATA, No critical threshold [20070126]
and /proc/acpi/thermal_zone was empty
In 2.6.26-rc1 we got this:
/proc/acpi/thermal_zone/THR1/cooling_mode:<setting not supported>
/proc/acpi/thermal_zone/THR1/polling_frequency:<polling disabled>
/proc/acpi/thermal_zone/THR1/state:state: critical
/proc/acpi/thermal_zone/THR1/temperature:temperature: 50 C
/proc/acpi/thermal_zone/THR1/trip_points:critical (S5): -73 C
<disabled>
/proc/acpi/thermal_zone/THR1/trip_points:hot (S4): 120 C
<disabled>
/proc/acpi/thermal_zone/THR1/trip_points:passive: 92 C: tc1=2
tc2=3 tsp=30 devices=CPU0 CPU1
though the system was booted with thermal.nocrt=1
in order to disable the critical trip point --
else the system would reboot...
The AML for _CRT is clearly broken.
Interestingly, for non Windows 2006, it appears that _HOT is broken too:
Store (0x07D0, OSYS)
If (CondRefOf (_OSI, Local0))
{
If (_OSI ("Linux"))
{
Store (One, LINX)
}
If (_OSI ("Windows 2001"))
{
Store (0x07D1, OSYS)
}
If (_OSI ("Windows 2001 SP1"))
{
Store (0x07D1, OSYS)
}
If (_OSI ("Windows 2001 SP2"))
{
Store (0x07D2, OSYS)
}
If (_OSI ("Windows 2006"))
{
Store (0x07D6, OSYS)
}
}
...
Method (_HOT, 0, Serialized)
{
If (LEqual (OSYS, 0x07D6))
{
If (LEqual (\_SB.TJ85, Zero))
{
Return (Add (0x0AAC, Multiply (TPC, 0x0A)))
}
Else
{
Return (Add (0x0AAC, Multiply (TP85, 0x0A)))
}
}
}
Method (_CRT, 0, Serialized)
{
If (LLess (OSYS, 0x07D6))
{
If (LEqual (\_SB.TJ85, Zero))
{
Return (Add (0x0AAC, Multiply (TPC, 0x0A)))
}
Else
{
Return (Add (0x0AAC, Multiply (TP85, 0x0A)))
}
}
}
So it appears that in the interest of being "bug compatible"
and conjuring up an "implicit return" here, we conjured up
a value that tubed the system when we should have disabled
_CRT (if not the entire thermal zone).
--
Configure bugmail: http://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.
More information about the Bugme-new
mailing list