Don't replicate how the *error is returned by mmc_start_req(). Signed-off-by: Grant Grundler <grundler@xxxxxxxxxxxx> --- drivers/mmc/core/core.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/drivers/mmc/core/core.c b/drivers/mmc/core/core.c index 4d5de98..deb0ee5 100644 --- a/drivers/mmc/core/core.c +++ b/drivers/mmc/core/core.c @@ -538,13 +538,12 @@ struct mmc_async_req *mmc_start_req(struct mmc_host *host, if (saved_areq) { saved_err = mmc_wait_for_data_req_done(host, saved_areq->mrq, areq); if (saved_err == MMC_BLK_NEW_REQUEST) { - if (error) - *error = saved_err; /* * The previous request was not completed, * nothing to return */ - return NULL; + saved_areq = NULL; + goto set_error; } /* * Check BKOPS urgency for each R1 response @@ -570,8 +569,10 @@ struct mmc_async_req *mmc_start_req(struct mmc_host *host, if (saved_areq) mmc_post_req(host, saved_areq->mrq, 0); +set_error: if (error) *error = saved_err; + return saved_areq; } EXPORT_SYMBOL(mmc_start_req); -- 1.8.4 -- To unsubscribe from this list: send the line "unsubscribe linux-mmc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html