Date: Sat, 2 Jun 2007 19:21:41 +0000 (UTC) From: Nate Lawson <njl@FreeBSD.org> To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/dev/acpica acpi_ec.c Message-ID: <200706021921.l52JLfIl017752@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
njl 2007-06-02 19:21:41 UTC FreeBSD src repository Modified files: sys/dev/acpica acpi_ec.c Log: AcpiAcquireGlobalLock() can sometimes sleep if the mutex is contested. The global lock is a memory region shared with the BIOS and thus has some strange behavior like the fact that the sleep is 1 ms max. We use standard mutexes to synchronize with the SCI so acquiring the global lock after locking the mutex resulted in a witness warning. To deal with this for now, acquire the global lock before all other locks, similar to Giant. This should fix the witness "sleeping with mutex held" issue on boot that occurred after the last ACPI-CA import. In the future, we hope to move to the new mutex interface in ACPI-CA instead of the pseudo-semaphore version we have now. Reviewed by: jkim Revision Changes Path 1.74 +10 -13 src/sys/dev/acpica/acpi_ec.c
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200706021921.l52JLfIl017752>