Bug 585756

Summary: ACPI Error: Illegal I/O port address/length above 64K
Product: [Fedora] Fedora Reporter: Jason Montana <montana1054>
Component: kernelAssignee: John Feeney <jfeeney>
Status: CLOSED CURRENTRELEASE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: urgent Docs Contact:
Priority: low    
Version: 13CC: anton, dougsland, esandeen, gansalmon, itamar, jonathan, kernel-maint, montana1054, pterjan
Target Milestone: ---   
Target Release: ---   
Hardware: i686   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
: 593766 (view as bug list) Environment:
Last Closed: 2011-02-09 17:00:50 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 593766    
Attachments:
Description Flags
dmesg from compaq sr1710nx
none
acpidump from compaq sr1710nx none

Description Jason Montana 2010-04-25 23:13:24 UTC
My machine is a HP Pvvilion
AMD64 Athlon
2 Gig of memory


The /var/log/message files keeps filling up with this error and slowily slows the machine down to a crawl.

The message file entry for fedora

Apr 21 16:05:02 Galactica kernel: Linux version 2.6.33.1-24.fc13.i686 (mockbuild.fedoraproject.org) (gcc version 4.4.3 20100226 (Red Hat 4.4.3-8) (GCC) ) #1 SMP Tue Mar 30 18:49:12 UTC 2010

ERROR

Apr 21 16:05:08 Galactica kernel: ACPI Error: Illegal I/O port address/length above 64K: 0x00400020/4 (20091214/hwvalid-154)
Apr 21 16:05:08 Galactica kernel: ACPI Exception: AE_LIMIT, Returned by Handler for [SystemIO] (20091214/evregion-475)
Apr 21 16:05:08 Galactica kernel: ACPI Error (psparse-0537): Method parse/execution failed [\_GPE._L09] (Node f6c46480), AE_LIMIT
Apr 21 16:05:08 Galactica kernel: ACPI Exception: AE_LIMIT, while evaluating GPE method [_L09] (20091214/evgpe-568)
Apr 21 16:05:08 Galactica kernel: ACPI Error: Illegal I/O port address/length above 64K: 0x00400020/4 (20091214/hwvalid-154)
Apr 21 16:05:08 Galactica kernel: ACPI Exception: AE_LIMIT, Returned by Handler for [SystemIO] (20091214/evregion-475)
Apr 21 16:05:08 Galactica kernel: ACPI Error (psparse-0537): Method parse/execution failed [\_GPE._L09] (Node f6c46480), AE_LIMIT
Apr 21 16:05:08 Galactica kernel: ACPI Exception: AE_LIMIT, while evaluating GPE method [_L09] (20091214/evgpe-568)
Apr 21 16:05:10 Galactica kernel: ACPI Error: Illegal I/O port address/length above 64K: 0x00400020/4 (20091214/hwvalid-154)
Apr 21 16:05:10 Galactica kernel: ACPI Exception: AE_LIMIT, Returned by Handler for [SystemIO] (20091214/evregion-475)
Apr 21 16:05:10 Galactica kernel: ACPI Error (psparse-0537): Method parse/execution failed [\_GPE._L09] (Node f6c46480), AE_LIMIT
Apr 21 16:05:10 Galactica kernel: ACPI Exception: AE_LIMIT, while evaluating GPE method [_L09] (20091214/evgpe-568)
Apr 21 16:05:11 Galactica kernel: ACPI Error: Illegal I/O port address/length above 64K: 0x00400020/4 (20091214/hwvalid-154)
Apr 21 16:05:11 Galactica kernel: ACPI Exception: AE_LIMIT, Returned by Handler for [SystemIO] (20091214/evregion-475)
Apr 21 16:05:11 Galactica kernel: ACPI Error (psparse-0537): Method parse/execution failed [\_GPE._L09] (Node f6c46480), AE_LIMIT
Apr 21 16:05:11 Galactica kernel: ACPI Exception: AE_LIMIT, while evaluating GPE method [_L09] (20091214/evgpe-568)


Complete message file available if needed

Thanks you for any and all help.

Comment 1 Eric Sandeen 2010-05-18 03:11:16 UTC
Created attachment 414710 [details]
dmesg from compaq sr1710nx

I've got the same messages, this is a compaq sr1710nx, known to have a buggy bios, I guess.  I can attach dsdt tables etc as well if anyone is interested.

Comment 2 Matthew Garrett 2010-05-18 11:58:33 UTC
Yeah. Please install the pmtools package and run acpidump as root, then attach the output.

Comment 3 Matthew Garrett 2010-05-18 16:08:30 UTC
Ok, got the acpidump from Eric, verified the behaviour of Windows and generated a patch. I'll test it a little more and then send it upstream and backport.

Comment 4 Eric Sandeen 2010-05-18 16:36:19 UTC
Created attachment 414905 [details]
acpidump from compaq sr1710nx

Attaching the acpidump here, just for posterity.

Thanks Matthew!

-Eric

Comment 5 Matthew Garrett 2010-05-18 18:00:21 UTC
Can you test http://fedorapeople.org/~mjg59/kernel-2.6.33.4-101.local.fc13.x86_64.rpm ?

Comment 6 Eric Sandeen 2010-05-19 01:44:19 UTC
Matthew, the patch did at lest shut up the messages on my kernel, thanks.

-Eric

Comment 7 Matthew Garrett 2010-05-19 16:48:11 UTC
This was tested by booting Windows under qemu with a hacked DSDT. I generated a SystemIO region with an address >64K and then added some code to the _INI method to output a byte to it. qemu was modified to dump this access. Using any addresses resulted in only the lower 16 bits being used.

In this specific case, the write was intended to ack the GPE - the address should have been 0x4020 but has been typoed as 0x400020. _L09 is the thermal event GPE on this platform, and the function called queries the hwmon chip on the smbus to change the fan state depending on temperature. The SMFN() method acks the hwmon chip's interrupt in the process, meaning that the write to the GPE is redundant. Masking off the upper bytes gives us 0x20, which is part of the PIC - Windows (and Linux) will then silently drop this write because it's filtered.