diff options
author | Bob Moore <robert.moore@intel.com> | 2007-02-02 16:48:20 (GMT) |
---|---|---|
committer | Len Brown <len.brown@intel.com> | 2007-02-03 02:14:24 (GMT) |
commit | 1ba753acb372c2955a4843302e92e49ce82e2fea (patch) | |
tree | 13dbe3af585f835c7d9cdf41fae505a7df4e8620 /drivers/acpi/events/evxface.c | |
parent | 95befdb398e0112ede80529f6770644ecfa5a82e (diff) | |
download | linux-fsl-qoriq-1ba753acb372c2955a4843302e92e49ce82e2fea.tar.xz |
ACPICA: Re-implement interpreters' "serialized mode"
Enhanced the implementation of the interpreters'
serialized mode (boot with "acpi_serialize" to set
acpi_glb_all_methods_serialized flag.)
When this mode is specified, instead of creating a serialization
semaphore per control method, the interpreter lock is
simply no longer released before a blocking operation
during control method execution. This effectively makes
the AML Interpreter single-threaded. The overhead of a
semaphore per-method is eliminated.
Signed-off-by: Alexey Starikovskiy <alexey.y.starikovskiy@intel.com>
Signed-off-by: Len Brown <len.brown@intel.com>
Diffstat (limited to 'drivers/acpi/events/evxface.c')
-rw-r--r-- | drivers/acpi/events/evxface.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/drivers/acpi/events/evxface.c b/drivers/acpi/events/evxface.c index 923fd2b..a2af48e 100644 --- a/drivers/acpi/events/evxface.c +++ b/drivers/acpi/events/evxface.c @@ -768,11 +768,9 @@ acpi_status acpi_acquire_global_lock(u16 timeout, u32 * handle) return (AE_BAD_PARAMETER); } - status = acpi_ex_enter_interpreter(); - if (ACPI_FAILURE(status)) { - return (status); - } + /* Must lock interpreter to prevent race conditions */ + acpi_ex_enter_interpreter(); status = acpi_ev_acquire_global_lock(timeout); acpi_ex_exit_interpreter(); |