|
@@ -850,9 +850,7 @@ out:
|
|
|
goto retry;
|
|
|
if (!err)
|
|
|
mmc_blk_reset_success(md, type);
|
|
|
- spin_lock_irq(&md->lock);
|
|
|
- __blk_end_request(req, err, blk_rq_bytes(req));
|
|
|
- spin_unlock_irq(&md->lock);
|
|
|
+ blk_end_request(req, err, blk_rq_bytes(req));
|
|
|
|
|
|
return err ? 0 : 1;
|
|
|
}
|
|
@@ -934,9 +932,7 @@ out_retry:
|
|
|
if (!err)
|
|
|
mmc_blk_reset_success(md, type);
|
|
|
out:
|
|
|
- spin_lock_irq(&md->lock);
|
|
|
- __blk_end_request(req, err, blk_rq_bytes(req));
|
|
|
- spin_unlock_irq(&md->lock);
|
|
|
+ blk_end_request(req, err, blk_rq_bytes(req));
|
|
|
|
|
|
return err ? 0 : 1;
|
|
|
}
|
|
@@ -951,9 +947,7 @@ static int mmc_blk_issue_flush(struct mmc_queue *mq, struct request *req)
|
|
|
if (ret)
|
|
|
ret = -EIO;
|
|
|
|
|
|
- spin_lock_irq(&md->lock);
|
|
|
- __blk_end_request_all(req, ret);
|
|
|
- spin_unlock_irq(&md->lock);
|
|
|
+ blk_end_request_all(req, ret);
|
|
|
|
|
|
return ret ? 0 : 1;
|
|
|
}
|
|
@@ -1252,14 +1246,10 @@ static int mmc_blk_cmd_err(struct mmc_blk_data *md, struct mmc_card *card,
|
|
|
|
|
|
blocks = mmc_sd_num_wr_blocks(card);
|
|
|
if (blocks != (u32)-1) {
|
|
|
- spin_lock_irq(&md->lock);
|
|
|
- ret = __blk_end_request(req, 0, blocks << 9);
|
|
|
- spin_unlock_irq(&md->lock);
|
|
|
+ ret = blk_end_request(req, 0, blocks << 9);
|
|
|
}
|
|
|
} else {
|
|
|
- spin_lock_irq(&md->lock);
|
|
|
- ret = __blk_end_request(req, 0, brq->data.bytes_xfered);
|
|
|
- spin_unlock_irq(&md->lock);
|
|
|
+ ret = blk_end_request(req, 0, brq->data.bytes_xfered);
|
|
|
}
|
|
|
return ret;
|
|
|
}
|
|
@@ -1311,10 +1301,8 @@ static int mmc_blk_issue_rw_rq(struct mmc_queue *mq, struct request *rqc)
|
|
|
* A block was successfully transferred.
|
|
|
*/
|
|
|
mmc_blk_reset_success(md, type);
|
|
|
- spin_lock_irq(&md->lock);
|
|
|
- ret = __blk_end_request(req, 0,
|
|
|
+ ret = blk_end_request(req, 0,
|
|
|
brq->data.bytes_xfered);
|
|
|
- spin_unlock_irq(&md->lock);
|
|
|
/*
|
|
|
* If the blk_end_request function returns non-zero even
|
|
|
* though all data has been transferred and no errors
|
|
@@ -1364,10 +1352,8 @@ static int mmc_blk_issue_rw_rq(struct mmc_queue *mq, struct request *rqc)
|
|
|
* time, so we only reach here after trying to
|
|
|
* read a single sector.
|
|
|
*/
|
|
|
- spin_lock_irq(&md->lock);
|
|
|
- ret = __blk_end_request(req, -EIO,
|
|
|
+ ret = blk_end_request(req, -EIO,
|
|
|
brq->data.blksz);
|
|
|
- spin_unlock_irq(&md->lock);
|
|
|
if (!ret)
|
|
|
goto start_new_req;
|
|
|
break;
|
|
@@ -1388,12 +1374,10 @@ static int mmc_blk_issue_rw_rq(struct mmc_queue *mq, struct request *rqc)
|
|
|
return 1;
|
|
|
|
|
|
cmd_abort:
|
|
|
- spin_lock_irq(&md->lock);
|
|
|
if (mmc_card_removed(card))
|
|
|
req->cmd_flags |= REQ_QUIET;
|
|
|
while (ret)
|
|
|
- ret = __blk_end_request(req, -EIO, blk_rq_cur_bytes(req));
|
|
|
- spin_unlock_irq(&md->lock);
|
|
|
+ ret = blk_end_request(req, -EIO, blk_rq_cur_bytes(req));
|
|
|
|
|
|
start_new_req:
|
|
|
if (rqc) {
|
|
@@ -1417,9 +1401,7 @@ static int mmc_blk_issue_rq(struct mmc_queue *mq, struct request *req)
|
|
|
ret = mmc_blk_part_switch(card, md);
|
|
|
if (ret) {
|
|
|
if (req) {
|
|
|
- spin_lock_irq(&md->lock);
|
|
|
- __blk_end_request_all(req, -EIO);
|
|
|
- spin_unlock_irq(&md->lock);
|
|
|
+ blk_end_request_all(req, -EIO);
|
|
|
}
|
|
|
ret = 0;
|
|
|
goto out;
|