mmc: block: Do not call post_req in DCMD case

No need to call post_req if it's a DCMD request
completion.

Change-Id: Id11165967e316b1e556aaeb6d67bd18844cee6e1
Signed-off-by: Ritesh Harjani <riteshh@codeaurora.org>
This commit is contained in:
Ritesh Harjani 2015-11-23 11:46:45 +05:30 committed by Subhash Jadavani
parent ed7cdb2aea
commit 313d5a3851

View file

@ -3070,11 +3070,11 @@ static void mmc_blk_cmdq_reset_all(struct mmc_host *host, int err)
if (!ret) { if (!ret) {
WARN_ON(!test_and_clear_bit(itag, WARN_ON(!test_and_clear_bit(itag,
&ctx_info->data_active_reqs)); &ctx_info->data_active_reqs));
mmc_cmdq_post_req(host, itag, err);
} else { } else {
clear_bit(CMDQ_STATE_DCMD_ACTIVE, clear_bit(CMDQ_STATE_DCMD_ACTIVE,
&ctx_info->curr_state); &ctx_info->curr_state);
} }
mmc_cmdq_post_req(host, itag, err);
WARN_ON(!test_and_clear_bit(itag, WARN_ON(!test_and_clear_bit(itag,
&ctx_info->active_reqs)); &ctx_info->active_reqs));
mmc_host_clk_release(host); mmc_host_clk_release(host);
@ -3286,7 +3286,7 @@ void mmc_blk_cmdq_complete_rq(struct request *rq)
else else
BUG_ON(!test_and_clear_bit(cmdq_req->tag, BUG_ON(!test_and_clear_bit(cmdq_req->tag,
&ctx_info->data_active_reqs)); &ctx_info->data_active_reqs));
if (!is_dcmd)
mmc_cmdq_post_req(host, cmdq_req->tag, err); mmc_cmdq_post_req(host, cmdq_req->tag, err);
if (cmdq_req->cmdq_req_flags & DCMD) { if (cmdq_req->cmdq_req_flags & DCMD) {
clear_bit(CMDQ_STATE_DCMD_ACTIVE, &ctx_info->curr_state); clear_bit(CMDQ_STATE_DCMD_ACTIVE, &ctx_info->curr_state);