Bug 585756
Summary: | ACPI Error: Illegal I/O port address/length above 64K | ||||||||
---|---|---|---|---|---|---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Jason Montana <montana1054> | ||||||
Component: | kernel | Assignee: | John Feeney <jfeeney> | ||||||
Status: | CLOSED CURRENTRELEASE | QA Contact: | Fedora Extras Quality Assurance <extras-qa> | ||||||
Severity: | urgent | Docs Contact: | |||||||
Priority: | low | ||||||||
Version: | 13 | CC: | 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
Jason Montana
2010-04-25 23:13:24 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.
Yeah. Please install the pmtools package and run acpidump as root, then attach the output. 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. Created attachment 414905 [details]
acpidump from compaq sr1710nx
Attaching the acpidump here, just for posterity.
Thanks Matthew!
-Eric
Matthew, the patch did at lest shut up the messages on my kernel, thanks. -Eric 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. |