From: Alexey Starikovskiy Date: Thu, 7 Dec 2006 15:42:17 +0000 (+0300) Subject: ACPI: ec: Acquire Global Lock under EC mutex. X-Git-Tag: v2.6.20-rc2~6^2~14^2~3 X-Git-Url: https://openfabrics.org/gitweb/?a=commitdiff_plain;h=523953b41e52952347d7d50dcc4bfc27bc001dc8;p=~emulex%2Finfiniband.git ACPI: ec: Acquire Global Lock under EC mutex. Signed-off-by: Len Brown --- diff --git a/drivers/acpi/ec.c b/drivers/acpi/ec.c index 8ef74e7b3b9..4d17777110e 100644 --- a/drivers/acpi/ec.c +++ b/drivers/acpi/ec.c @@ -286,12 +286,12 @@ static int acpi_ec_transaction(struct acpi_ec *ec, u8 command, if (rdata) memset(rdata, 0, rdata_len); + mutex_lock(&ec->lock); if (ec->global_lock) { status = acpi_acquire_global_lock(ACPI_EC_UDELAY_GLK, &glk); if (ACPI_FAILURE(status)) return -ENODEV; } - mutex_lock(&ec->lock); /* Make sure GPE is enabled before doing transaction */ acpi_enable_gpe(NULL, ec->gpe, ACPI_NOT_ISR); @@ -307,10 +307,10 @@ static int acpi_ec_transaction(struct acpi_ec *ec, u8 command, rdata, rdata_len); end: - mutex_unlock(&ec->lock); if (ec->global_lock) acpi_release_global_lock(glk); + mutex_unlock(&ec->lock); return status; }