projects
/
platform
/
kernel
/
linux-arm64.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
9b84496
)
mmc: block: don't start new request when the card is removed
author
Seungwon Jeon
<tgih.jun@samsung.com>
Tue, 22 Jan 2013 10:48:07 +0000
(19:48 +0900)
committer
Chris Ball
<cjb@laptop.org>
Sun, 24 Feb 2013 19:37:12 +0000
(14:37 -0500)
It's not necessary to start a new request while error handling if
the card was removed.
Signed-off-by: Seungwon Jeon <tgih.jun@samsung.com>
Acked-by: Jaehoon Chung <jh80.chung@samsung.com>
Tested-by: Konstantin Dorfman <kdorfman@codeaurora.org>
Signed-off-by: Chris Ball <cjb@laptop.org>
drivers/mmc/card/block.c
patch
|
blob
|
history
diff --git
a/drivers/mmc/card/block.c
b/drivers/mmc/card/block.c
index
f79b468
..
1170afe
100644
(file)
--- a/
drivers/mmc/card/block.c
+++ b/
drivers/mmc/card/block.c
@@
-1456,8
+1456,14
@@
static int mmc_blk_issue_rw_rq(struct mmc_queue *mq, struct request *rqc)
start_new_req:
if (rqc) {
- mmc_blk_rw_rq_prep(mq->mqrq_cur, card, 0, mq);
- mmc_start_req(card->host, &mq->mqrq_cur->mmc_active, NULL);
+ if (mmc_card_removed(card)) {
+ rqc->cmd_flags |= REQ_QUIET;
+ blk_end_request_all(rqc, -EIO);
+ } else {
+ mmc_blk_rw_rq_prep(mq->mqrq_cur, card, 0, mq);
+ mmc_start_req(card->host,
+ &mq->mqrq_cur->mmc_active, NULL);
+ }
}
return 0;