|
@@ -303,11 +303,11 @@ static int acpi_ec_transaction_unlocked(struct acpi_ec *ec,
|
|
|
/* following two actions should be kept atomic */
|
|
|
ec->curr = t;
|
|
|
start_transaction(ec);
|
|
|
- if (ec->curr->command == ACPI_EC_COMMAND_QUERY)
|
|
|
- clear_bit(EC_FLAGS_QUERY_PENDING, &ec->flags);
|
|
|
spin_unlock_irqrestore(&ec->lock, tmp);
|
|
|
ret = ec_poll(ec);
|
|
|
spin_lock_irqsave(&ec->lock, tmp);
|
|
|
+ if (ec->curr->command == ACPI_EC_COMMAND_QUERY)
|
|
|
+ clear_bit(EC_FLAGS_QUERY_PENDING, &ec->flags);
|
|
|
ec->curr = NULL;
|
|
|
spin_unlock_irqrestore(&ec->lock, tmp);
|
|
|
return ret;
|