OpenSolaris

You are not signed in. Sign in or register.

Heads up: ACPI Thermal Zone monitor

Date: Thu, 27 Apr 2006 19:40:04 -0700
From: Alan Perry <Alan dot Perry at Sun dot COM>
To: on-all at eng dot sun dot com, onnv-gate at onnv dot eng dot sun dot com
Subject: Heads up: ACPI Thermal Zone monitor


With the putback of

   6363985 acpica: Metropolis SMB Alerts result in high background 
system load

Solaris Nevada now has a basic ACPI Thermal Zone monitor.

ACPI on a given system may defined one or more thermal zones.  A thermal 
zone is a temperature domain within a system.  There can be a number of 
methods (which evaluate to temperature values) and objects (which 
correspond to device lists) associated with the thermal zone, including 
the current operating temperature, significant temperatures when action 
needs to be taken (trip points) and devices associated with some of 
those trip points.  For more details on what kinds of things could be 
implemented in a system, check out the ACPI specification.

The problem reported in 6363985 was the result of an interrupt storm 
caused by the ACPI thermal zone method _TMP (the current operating 
temperature) not being evaluated in response to thermal zone events 
because there was no thermal zone monitor in Solaris.  This putback 
implements a minimal, basic thermal zone monitor.  A more sophisticated 
thermal zone monitor could be implemented in the future.

So, why the heads up?

The basic thermal zone monitor that was putback is a pseudodriver that, 
among other things, handles three types of thermal zone trip points:

_HOT - If the operating temperature exceeds the _HOT (hot) temperature, 
the operating system should initiate an orderly shutdown.

_CRT - If the operating temperature exceeds the _CRT (critical) 
temperature, the operating system should shut down the system as soon as 
possible.

_ACx - If the operating temperature exceeds one of 10 _AC (active 
cooling) temperatures, the operating system should enable the 
corresponding _ALx object and disable the corresponding _ALx object for 
the previous active cooling state.

Not all systems with ACPI implement _HOT, _CRT or _ACx methods, so the 
impact of this driver on a given system will vary.

If you have any questions, just ask.

alan perry