Subject: Re: more suspend travails with my thinkpad...
To: Kevin Lahey <kml@patheticgeek.net>
From: Jared D. McNeill <jmcneill@invisible.ca>
List: current-users
Date: 12/13/2007 07:31:24
On Wed, 12 Dec 2007, Kevin Lahey wrote:
> ioapic0 reenabling
> Mutex error: mutex_vector_enter: locking against myself
Alright, this appears to be a nasty locking bug in ACPI-CA that for some
reason I haven't been able to trigger.
Can you try the following patch?
Index: evgpe.c
===================================================================
RCS file: /cvsroot/src/sys/dist/acpica/evgpe.c,v
retrieving revision 1.3
diff -u -r1.3 evgpe.c
--- evgpe.c 11 Dec 2007 13:16:05 -0000 1.3
+++ evgpe.c 13 Dec 2007 12:29:53 -0000
@@ -513,7 +513,8 @@
* Note: Not necessary to obtain the hardware lock, since the GPE
registers
* are owned by the GpeLock.
*/
- Flags = AcpiOsAcquireLock (AcpiGbl_GpeLock);
+ if (AcpiGbl_SystemAwakeAndRunning)
+ Flags = AcpiOsAcquireLock (AcpiGbl_GpeLock);
/* Examine all GPE blocks attached to this interrupt level */
@@ -587,7 +588,8 @@
UnlockAndExit:
- AcpiOsReleaseLock (AcpiGbl_GpeLock, Flags);
+ if (AcpiGbl_SystemAwakeAndRunning)
+ AcpiOsReleaseLock (AcpiGbl_GpeLock, Flags);
return (IntStatus);
}