Patchwork Fix race resulting in loosing event bit in GPE.1.sts

login
register
mail settings
Submitter Igor Mammedov
Date April 3, 2012, 9 p.m.
Message ID <e6b7bdfb-4085-4d29-beed-ee3eb919fc26@zmail16.collab.prod.int.phx2.redhat.com>
Download mbox | patch
Permalink /patch/150550/
State New
Headers show

Comments

Igor Mammedov - April 3, 2012, 9 p.m.
Tried another approach, that involves only seabios change as specified in
acpi50.spec: 5.6.4 General-Purpose Event Handling
by switching from level to edge handler.


It fixes problem (at least I wasn't able to hit window between GPE00.sts read and
GPE00.sts reset, too small interval).
It seems to work as expected with rhel6, 3.3+ kernel, winxp, ws2008r2.
Will post patch to seabios list and hope we won't need this one in qemu.

Patch

diff --git a/src/acpi-dsdt.dsl b/src/acpi-dsdt.dsl
index 4e04c48..51906ad 100644
--- a/src/acpi-dsdt.dsl
+++ b/src/acpi-dsdt.dsl
@@ -723,7 +723,7 @@  DefinitionBlock (
         Method(_L00) {
             Return(0x01)
         }
-        Method(_L01) {
+        Method(_E01) {
             // PCI hotplug event
             Return(\_SB.PCI0.PCNF())
         }