From owner-freebsd-acpi@FreeBSD.ORG Sun Jun 25 23:17:46 2006 Return-Path: X-Original-To: freebsd-acpi@freebsd.org Delivered-To: freebsd-acpi@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id C272216A401 for ; Sun, 25 Jun 2006 23:17:46 +0000 (UTC) (envelope-from nate@root.org) Received: from pimout6-ext.prodigy.net (pimout6-ext.prodigy.net [207.115.63.78]) by mx1.FreeBSD.org (Postfix) with ESMTP id 61D324408B for ; Sun, 25 Jun 2006 23:17:46 +0000 (GMT) (envelope-from nate@root.org) X-ORBL: [71.139.62.134] Received: from [10.0.5.51] (ppp-71-139-62-134.dsl.snfc21.pacbell.net [71.139.62.134]) by pimout6-ext.prodigy.net (8.13.6 out.dk/8.13.6) with ESMTP id k5PNHh5v249848; Sun, 25 Jun 2006 19:17:44 -0400 Message-ID: <449EB6B4.1010601@root.org> Date: Sun, 25 Jun 2006 09:15:48 -0700 From: Nate Lawson User-Agent: Thunderbird 1.5.0.2 (X11/20060501) MIME-Version: 1.0 To: robertsg@westnet.com.au References: <200606232251.15593.robertsg@westnet.com.au> In-Reply-To: <200606232251.15593.robertsg@westnet.com.au> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: freebsd-acpi@freebsd.org Subject: Re: acpi: bad write to port 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: Sun, 25 Jun 2006 23:17:46 -0000 Geoff Roberts wrote: > I'm not sure if this is the correct list, please let me know if it > belongs on another list. > > Since upgrading from 6.0 to the latest RELENG_6 branch the following > message appears every 10 seconds (exactly): > > Jun 22 15:00:06 emmapc kernel: acpi: bad write to port 0x070 (8), val > 0x59 > Jun 22 15:00:06 emmapc kernel: acpi: bad read from port 0x071 (8) > > I am using a Gigabyte GA60MM7E Rev 2.0 motherboard. It also has a PCI > SATA controller using a Si 3112 chip, a RealTek network card and a > Netgear WG311 wireless card. > > I've included the output of dmesg and pciconf -lv > > Any idea as to what might be causing this? Please let me know if there > is some more information required. The IO access has always been going on, we just started catching it recently. Those are the CMOS/RTC ports and it's not appropriate for the BIOS to access them. This is from OsdHardware.c log: revision 1.18 date: 2006/03/29 06:41:56; author: njl; state: Exp; lines: +76 -0 Add a blacklist for bad IO ports that AML should never touch. It seems some systems were designed so that AML writes to various resources shared with OS drivers, including the RTC, PIC, PCI, etc. These writes could collide with writes by the OS and should never be performed. For now, we print a message if such an access occurs, but do not block it. To block the access, the tunable "debug.acpi.block_bad_io" can be set to 1. In the future, we will flip the switch and this will become the default. Information about this problem was found in Microsoft KB 283649. They block IO accesses if the BIOS indicates via _OSI that it is Windows 2001 or higher. They always block accesses to the PIC, cascaded PIC, and ELCRs, no matter how old the BIOS. To test if disabling these writes hurts your system, try booting with debug.acpi.block_bad_io=1 set at the loader prompt. If there's a problem, let me know what happened. This helps us gather info for when we flip the switch to disabling such writes by default. -- Nate