From owner-freebsd-acpi@FreeBSD.ORG Sat Apr 3 04:41:40 2010 Return-Path: Delivered-To: freebsd-acpi@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 87229106566B for ; Sat, 3 Apr 2010 04:41:40 +0000 (UTC) (envelope-from smithi@nimnet.asn.au) Received: from sola.nimnet.asn.au (paqi.nimnet.asn.au [115.70.110.159]) by mx1.freebsd.org (Postfix) with ESMTP id D90748FC18 for ; Sat, 3 Apr 2010 04:41:39 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by sola.nimnet.asn.au (8.14.2/8.14.2) with ESMTP id o334fUpT066791; Sat, 3 Apr 2010 15:41:31 +1100 (EST) (envelope-from smithi@nimnet.asn.au) Date: Sat, 3 Apr 2010 15:41:30 +1100 (EST) From: Ian Smith To: Bartosz Fabianowski In-Reply-To: <4BB69279.6060005@chillt.de> Message-ID: <20100403152134.V35463@sola.nimnet.asn.au> References: <4BB69279.6060005@chillt.de> MIME-Version: 1.0 Content-Type: MULTIPART/MIXED; BOUNDARY="0-1982801494-1270269690=:35463" Cc: freebsd-acpi@freebsd.org Subject: Re: Spurious thermal shutdowns on Dell Studio 1557 X-BeenThere: freebsd-acpi@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: ACPI and power management development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 03 Apr 2010 04:41:40 -0000 This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. --0-1982801494-1270269690=:35463 Content-Type: TEXT/PLAIN; charset=ISO-8859-1 Content-Transfer-Encoding: 8BIT On Sat, 3 Apr 2010, Bartosz Fabianowski wrote: > I have a Dell Studio 1557 laptop. When I first set up the machine in January > 2010, I was able to compile the FreeBSD 8-STABLE base system and 700 ports > without any thermal issues. > > Around mid-February 2010, I updated to a newer 8-STABLE. Since then, the > computer has been shutting down due to "critical temperatures" whenever I run > a CPU-intensive task for more than a few minutes. It is now impossible to > compile Firefox or OpenOffice.org. > > The shutdowns are caused by TZ1, representing the CPU. The relevant sysctl > output is: > > > hw.acpi.thermal.tz1.temperature: 60.0C > hw.acpi.thermal.tz1.active: 1 > hw.acpi.thermal.tz1.passive_cooling: 1 > hw.acpi.thermal.tz1.thermal_flags: 0 > hw.acpi.thermal.tz1._PSV: 95.0C > hw.acpi.thermal.tz1._HOT: -1 > hw.acpi.thermal.tz1._CRT: 85.0C > hw.acpi.thermal.tz1._ACx: 71.0C 55.0C -1 -1 -1 -1 -1 -1 -1 -1 > hw.acpi.thermal.tz1._TC1: 0 > hw.acpi.thermal.tz1._TC2: 10 > hw.acpi.thermal.tz1._TSP: 2 > > > Notice how _PSV=95°C > _CRT=85°C. This looks very fishy to me. At 95°C, the > CPU should start throttling its speed, passively reducing temperature. But > before it gets a chance to do so, the system shuts down due to reaching 85°C. > I can work around this by overriding _CRT, setting it to e.g. 99°C. But this > clearly is a hack. Prior to some change in FreeBSD, I did not experience any > such problems. It certainly seems a strange _CRT value, and silly having it less than _PSV, though it seems unlikely that FreeBSD ACPI would be messing with these values, which you appear to have tracked down correctly. However there may be other reasons the laptop is getting even that hot. You should hear the fan come on at 55C, and run faster at 71C, as active cooling is also on. Is that happening? If the fan is running properly, have you checked that the airways aren't blocked by dust and/or fluff? > I disassembled the DSDT. The threshold values are computed as follows: > > > Method (_PSV, 0, Serialized) > { > Return (Add (0x0AAC, Multiply (PSVT, 0x0A))) > } > > Method (_CRT, 0, Serialized) > { > Return (Add (0x0AAC, Multiply (CRTT, 0x0A))) > } > > > The constants PSVT and CRTT are found in the following memory region: > > > OperationRegion (GNVS, SystemMemory, 0xC779BC9E, 0x0200) > > > Their actual values are PSVT=0x5F and CRTT=0x55, corresponding to a _PSV > threshold 10°C higher than _CRT. Yes, they're 95 and 85 respectively. > All of this could be the BIOS' fault - a table of nonsense values set up > incorrectly by Dell. However, I never touched the BIOS since first setting up > the machine. The only thing that has changed is FreeBSD, not the BIOS. Could > this be some problem in FreeBSD's ACPI implementation? Are the values being > read or interpreted wrong? > > I know manufacturers often provide sloppy, wrong DSDTs. But these values > would make even Windows shut down under moderate to high load. That cannot be > right. > > I am happy to debug further if someone could give me pointers where to look. > > - Bartosz Maybe Dell don't trust non-Windows OS to take care of passive cooling? Could be worth seeing if those values come up the same if you spoof some type of Windows as your OS, as detailed in the ACPI debugging section? cheers, Ian --0-1982801494-1270269690=:35463--