aboutsummaryrefslogtreecommitdiff
path: root/drivers/mmc/core/core.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/mmc/core/core.c')
-rw-r--r--drivers/mmc/core/core.c11
1 files changed, 3 insertions, 8 deletions
diff --git a/drivers/mmc/core/core.c b/drivers/mmc/core/core.c
index 7cec8c6ed66..fb5341f3c79 100644
--- a/drivers/mmc/core/core.c
+++ b/drivers/mmc/core/core.c
@@ -536,13 +536,10 @@ EXPORT_SYMBOL(mmc_start_bkops);
*/
static void mmc_wait_data_done(struct mmc_request *mrq)
{
- unsigned long flags;
struct mmc_context_info *context_info = &mrq->host->context_info;
- spin_lock_irqsave(&context_info->lock, flags);
- mrq->host->context_info.is_done_rcv = true;
- wake_up_interruptible(&mrq->host->context_info.wait);
- spin_unlock_irqrestore(&context_info->lock, flags);
+ context_info->is_done_rcv = true;
+ wake_up_interruptible(&context_info->wait);
}
/**
@@ -709,7 +706,6 @@ static int mmc_wait_for_data_req_done(struct mmc_host *host,
struct mmc_context_info *context_info = &host->context_info;
bool pending_is_urgent = false;
bool is_urgent = false;
- bool is_done_rcv = false;
int err, ret;
unsigned long flags;
@@ -720,10 +716,9 @@ static int mmc_wait_for_data_req_done(struct mmc_host *host,
context_info->is_urgent));
spin_lock_irqsave(&context_info->lock, flags);
is_urgent = context_info->is_urgent;
- is_done_rcv = context_info->is_done_rcv;
context_info->is_waiting_last_req = false;
spin_unlock_irqrestore(&context_info->lock, flags);
- if (is_done_rcv) {
+ if (context_info->is_done_rcv) {
context_info->is_done_rcv = false;
context_info->is_new_req = false;
cmd = mrq->cmd;