mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-08-22 08:49:45 +00:00
mmc: core: Ensure cmd_completion is initialized
mmc_test now uses mmc_start_request() to test sending commands during
"ongoing" asynchronous transfers, i.e. tests:
Commands during non-blocking read - use Set Block Count (CMD23)
Commands during non-blocking write - use Set Block Count (CMD23)
mmc_start_request() was not initializing cmd_completion, but cmd_completion
is used by "ongoing" transfers, so move initialization of cmd_completion
into making mmc_start_request().
Fixes: cb39f61e9b
("mmc: core: Export a few functions needed for blkmq support")
Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
This commit is contained in:
parent
34597a3f60
commit
d2383318c5
1 changed files with 2 additions and 4 deletions
|
@ -348,6 +348,8 @@ int mmc_start_request(struct mmc_host *host, struct mmc_request *mrq)
|
|||
{
|
||||
int err;
|
||||
|
||||
init_completion(&mrq->cmd_completion);
|
||||
|
||||
mmc_retune_hold(host);
|
||||
|
||||
if (mmc_card_removed(host->card))
|
||||
|
@ -418,8 +420,6 @@ static int __mmc_start_data_req(struct mmc_host *host, struct mmc_request *mrq)
|
|||
mrq->done = mmc_wait_data_done;
|
||||
mrq->host = host;
|
||||
|
||||
init_completion(&mrq->cmd_completion);
|
||||
|
||||
err = mmc_start_request(host, mrq);
|
||||
if (err) {
|
||||
mrq->cmd->error = err;
|
||||
|
@ -439,8 +439,6 @@ static int __mmc_start_req(struct mmc_host *host, struct mmc_request *mrq)
|
|||
init_completion(&mrq->completion);
|
||||
mrq->done = mmc_wait_done;
|
||||
|
||||
init_completion(&mrq->cmd_completion);
|
||||
|
||||
err = mmc_start_request(host, mrq);
|
||||
if (err) {
|
||||
mrq->cmd->error = err;
|
||||
|
|
Loading…
Reference in a new issue