From 9be948a9f98daf49c1717dfd70e00c93513a7fa1 Mon Sep 17 00:00:00 2001 From: Pierre Ossman Date: Tue, 14 Nov 2006 22:13:13 +0100 Subject: [PATCH] --- yaml --- r: 41447 b: refs/heads/master c: 8b7feff881b7e9f065ddd718a6841121207c3c19 h: refs/heads/master i: 41445: e76fd5beee052acb7d9049f7cc6c8a58b8fcd764 41443: 55a51b0f5ee9dea17e236ea0670f7a6f1af7e471 41439: 4bb82238e57289683642a7450aa75cf3ee00974c v: v3 --- [refs] | 2 +- trunk/drivers/mmc/mmc_block.c | 7 +++---- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/[refs] b/[refs] index e510809ae42e..04a79ebdc689 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 89b4e133afea9fce333054b94d89953583a55c19 +refs/heads/master: 8b7feff881b7e9f065ddd718a6841121207c3c19 diff --git a/trunk/drivers/mmc/mmc_block.c b/trunk/drivers/mmc/mmc_block.c index 5025abebfc82..87713572293f 100644 --- a/trunk/drivers/mmc/mmc_block.c +++ b/trunk/drivers/mmc/mmc_block.c @@ -224,10 +224,10 @@ static int mmc_blk_issue_rq(struct mmc_queue *mq, struct request *req) struct mmc_blk_data *md = mq->data; struct mmc_card *card = md->queue.card; struct mmc_blk_request brq; - int ret; + int ret = 1; if (mmc_card_claim_host(card)) - goto cmd_err; + goto flush_queue; do { struct mmc_command cmd; @@ -344,8 +344,6 @@ static int mmc_blk_issue_rq(struct mmc_queue *mq, struct request *req) return 1; cmd_err: - ret = 1; - /* * If this is an SD card and we're writing, we can first * mark the known good sectors as ok. @@ -379,6 +377,7 @@ static int mmc_blk_issue_rq(struct mmc_queue *mq, struct request *req) mmc_card_release_host(card); +flush_queue: spin_lock_irq(&md->lock); while (ret) { ret = end_that_request_chunk(req, 0,