From: Konstantin Dorfman <kdorfman@codeaurora.org>
To: linux-mmc@vger.kernel.org
Cc: Ulf Hansson <ulf.hansson@linaro.org>, Chris Ball <chris@printf.net>
Subject: mmc: core: retries counter for data command initialization.
Date: Tue, 29 Apr 2014 10:55:46 +0300 [thread overview]
Message-ID: <535F5B02.9060908@codeaurora.org> (raw)
Hi All,
After 6035d9730d5825e6e3c225b721a5847a521d6556 "mmc: fix async request
mechanism for sequential read scenarios" mmc layer data path async
request handling was separated from mmc commands path.
mmc_wait_for_data_req_done() function is used to wait for completion of
the currently running data request, while for commands
mmc_wait_for_req_done() is used.
There is code that repeats request cmd->retries times in case of error.
The problem that for data command this counter is not initialized
properly as it does for mmc command sending:
int mmc_wait_for_cmd(struct mmc_host *host, struct mmc_command *cmd, int
retries)
{
struct mmc_request mrq = {NULL};
WARN_ON(!host->claimed);
memset(cmd->resp, 0, sizeof(cmd->resp));
cmd->retries = retries; <-- supplied by
caller
mrq.cmd = cmd;
cmd->data = NULL;
mmc_wait_for_req(host, &mrq);
return cmd->error;
}
I found that there is no similar initialization for data command
processing code, so the counter cmd->retries remains always 0.
Lets discuss:
- do we need retries for data request
- what value is good: for command there are 0 or 5 retries
- where to do this initialization:card/block.c:mmc_wait_for_req_done() ?
Thanks,
Kostya
--
sent by an employee of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation
next reply other threads:[~2014-04-29 7:55 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-04-29 7:55 Konstantin Dorfman [this message]
2014-04-29 11:48 ` mmc: core: retries counter for data command initialization Konstantin Dorfman
2014-05-12 14:33 ` Fwd: " Konstantin Dorfman
2014-05-13 8:19 ` Ulf Hansson
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=535F5B02.9060908@codeaurora.org \
--to=kdorfman@codeaurora.org \
--cc=chris@printf.net \
--cc=linux-mmc@vger.kernel.org \
--cc=ulf.hansson@linaro.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.