Linux block layer
 help / color / mirror / Atom feed
From: Linus Walleij <linus.walleij@linaro.org>
To: linux-mmc@vger.kernel.org, linux-block@vger.kernel.org,
	Ulf Hansson <ulf.hansson@linaro.org>
Cc: Chunyan Zhang <zhang.chunyan@linaro.org>,
	Baolin Wang <baolin.wang@linaro.org>,
	Paolo Valente <paolo.valente@linaro.org>,
	Linus Walleij <linus.walleij@linaro.org>
Subject: [PATCH 0/6] mmc: block: command issue cleanups
Date: Tue, 24 Jan 2017 11:17:51 +0100	[thread overview]
Message-ID: <20170124101757.19676-1-linus.walleij@linaro.org> (raw)

The function mmc_blk_issue_rw_rq() is hopelessly convoluted and
need to be refactored to it can be understood by humans.

In the process I found some weird magic return values passed
around for no good reason.

Things are more readable after this.

This work is done towards the goal of breaking the function in
two parts: one just submitting the requests and one checking the
result and possibly resubmitting the command on error, so we
can make the usual path (non-errorpath) smooth and quick, and
be called directly when the driver completes a request.

That in turn is a prerequisite for proper blk-mq integration
with the MMC/SD stack.

All that comes later.

Linus Walleij (6):
  mmc: block: break out mmc_blk_rw_cmd_abort()
  mmc: block: break out mmc_blk_rw_start_new()
  mmc: block: do not assign mq_rq when aborting command
  mmc: block: inline command abortions
  mmc: block: introduce new_areq and old_areq
  mmc: block: stop passing around pointless return values

 drivers/mmc/core/block.c | 108 ++++++++++++++++++++++++++---------------------
 drivers/mmc/core/block.h |   2 +-
 2 files changed, 60 insertions(+), 50 deletions(-)

-- 
2.9.3


             reply	other threads:[~2017-01-24 10:18 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-01-24 10:17 Linus Walleij [this message]
2017-01-24 10:17 ` [PATCH 1/6] mmc: block: break out mmc_blk_rw_cmd_abort() Linus Walleij
2017-01-25  9:23   ` Mateusz Nowak
2017-01-26 15:01     ` Linus Walleij
2017-01-24 10:17 ` [PATCH 2/6] mmc: block: break out mmc_blk_rw_start_new() Linus Walleij
2017-01-24 10:17 ` [PATCH 3/6] mmc: block: do not assign mq_rq when aborting command Linus Walleij
2017-01-24 10:17 ` [PATCH 4/6] mmc: block: inline command abortions Linus Walleij
2017-01-24 10:17 ` [PATCH 5/6] mmc: block: introduce new_areq and old_areq Linus Walleij
2017-01-24 10:17 ` [PATCH 6/6] mmc: block: stop passing around pointless return values Linus Walleij
2017-01-26  8:07 ` [PATCH 0/6] mmc: block: command issue cleanups Ulf Hansson
2017-01-27  7:58   ` Ulf Hansson
2017-01-27  9:46     ` Maxime Ripard
2017-01-30 13:05     ` Linus Walleij
2017-01-30 13:30       ` Linus Walleij

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=20170124101757.19676-1-linus.walleij@linaro.org \
    --to=linus.walleij@linaro.org \
    --cc=baolin.wang@linaro.org \
    --cc=linux-block@vger.kernel.org \
    --cc=linux-mmc@vger.kernel.org \
    --cc=paolo.valente@linaro.org \
    --cc=ulf.hansson@linaro.org \
    --cc=zhang.chunyan@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox