public inbox for linux-mmc@vger.kernel.org
 help / color / mirror / Atom feed
From: Adrian Hunter <adrian.hunter@intel.com>
To: Ulf Hansson <ulf.hansson@linaro.org>
Cc: linux-mmc <linux-mmc@vger.kernel.org>,
	Bough Chen <haibo.chen@nxp.com>,
	Alex Lemberg <alex.lemberg@sandisk.com>,
	Mateusz Nowak <mateusz.nowak@intel.com>,
	Yuliy Izrailov <Yuliy.Izrailov@sandisk.com>,
	Jaehoon Chung <jh80.chung@samsung.com>,
	Dong Aisheng <dongas86@gmail.com>,
	Das Asutosh <asutoshd@codeaurora.org>,
	Zhangfei Gao <zhangfei.gao@gmail.com>,
	Dorfman Konstantin <kdorfman@codeaurora.org>,
	Sahitya Tummala <stummala@codeaurora.org>,
	Harjani Ritesh <riteshh@codeaurora.org>,
	Venu Byravarasu <vbyravarasu@nvidia.com>,
	Linus Walleij <linus.walleij@linaro.org>,
	Shawn Lin <shawn.lin@rock-chips.com>
Subject: Re: [PATCH V4 00/11] mmc: Add Command Queue support
Date: Tue, 8 Aug 2017 12:26:28 +0300	[thread overview]
Message-ID: <08f77620-3efa-0532-9146-27bcae00b19a@intel.com> (raw)
In-Reply-To: <CAPDyKFpSq+nNCud=XmnQN_s5Hjfh1LVrA=5enwOw1PrN=n8-yw@mail.gmail.com>

On 07/08/17 16:41, Ulf Hansson wrote:
> On 21 July 2017 at 11:49, Adrian Hunter <adrian.hunter@intel.com> wrote:
>> Hi
>>
>> Here is V4 of the hardware command queue patches without the software
>> command queue patches.
> 
> Adrian, again apologize for the delay.
> 
> I am reviewing the series now and my intent is to provide comments on
> each change separately during the week.
> 
> However, a couple of overall thoughts:
> 
> *) Could you please post some fresh performance measurements, such we
> can get some real proof on why CMDQ is worth to be merged? If not
> increased throughput, perhaps we can show some decreased I/O requests
> latency!?

HW CMDQ offers 25% - 50% better random multi-threaded I/O.  I see a slight
2% drop in sequential read speed but no change to sequential write.

> 
> **) I have spoken to Linus W offlist - and he is still working on the
> blkmq port. Although we first need to continue with the
> re-factorization of the mmc block/core code, to minimize the bad
> impact of our big mmc claim host lock. We should expect a
> re-submission of his series quite soonish. However, it's also likely
> that we need yet another round of re-factoring, before we can complete
> the port to blkmq.
> 
> ***) The reason for bringing up **), is of course because I think
> deploying CMDQ support would be better done on top of the blkmq
> interface as it's better suited for these kind of device types. My
> goal is to reach a better maintenance situation, using more modern mmc
> block code. We have spoken about this before, however of course I also
> don't want to delay the CMDQ series. Anyway, let's move forward and
> see what path we end up taking.

There is no advantage to holding up HW CMDQ.

> 
>>
>>
>> Changes since V3:
>>         Adjusted ...blk_end_request...() for new block status codes
>>         Fixed CQHCI transaction descriptor for "no DCMD" case
>>
>> Changes since V2:
>>         Dropped patches that have been applied.
>>         Re-based
>>         Added "mmc: sdhci-pci: Add CQHCI support for Intel GLK"
>>
>> Changes since V1:
>>
>>         "Share mmc request array between partitions" is dependent
>>         on changes in "Introduce queue semantics", so added that
>>         and block fixes:
>>
>>         Added "Fix is_waiting_last_req set incorrectly"
>>         Added "Fix cmd error reset failure path"
>>         Added "Use local var for mqrq_cur"
>>         Added "Introduce queue semantics"
>>
>> Changes since RFC:
>>
>>         Re-based on next.
>>         Added comment about command queue priority.
>>         Added some acks and reviews.
>>
>>
>> Adrian Hunter (10):
>>       mmc: core: Add mmc_retune_hold_now()
>>       mmc: core: Add members to mmc_request and mmc_data for CQE's
>>       mmc: host: Add CQE interface
>>       mmc: core: Turn off CQE before sending commands
>>       mmc: core: Add support for handling CQE requests
>>       mmc: mmc: Enable Command Queuing
>>       mmc: mmc: Enable CQE's
>>       mmc: block: Prepare CQE data
>>       mmc: block: Add CQE support
>>       mmc: sdhci-pci: Add CQHCI support for Intel GLK
>>
>> Venkat Gopalakrishnan (1):
>>       mmc: cqhci: support for command queue enabled host
>>
>>  drivers/mmc/core/block.c          |  240 +++++++-
>>  drivers/mmc/core/block.h          |    7 +
>>  drivers/mmc/core/bus.c            |    7 +
>>  drivers/mmc/core/core.c           |  156 ++++-
>>  drivers/mmc/core/host.c           |    6 +
>>  drivers/mmc/core/host.h           |    1 +
>>  drivers/mmc/core/mmc.c            |   30 +-
>>  drivers/mmc/core/queue.c          |  273 ++++++++-
>>  drivers/mmc/core/queue.h          |   42 +-
>>  drivers/mmc/host/Kconfig          |   14 +
>>  drivers/mmc/host/Makefile         |    1 +
>>  drivers/mmc/host/cqhci.c          | 1146 +++++++++++++++++++++++++++++++++++++
>>  drivers/mmc/host/cqhci.h          |  240 ++++++++
>>  drivers/mmc/host/sdhci-pci-core.c |  153 ++++-
>>  include/linux/mmc/core.h          |   18 +-
>>  include/linux/mmc/host.h          |   24 +
>>  include/trace/events/mmc.h        |   36 +-
>>  17 files changed, 2354 insertions(+), 40 deletions(-)
>>  create mode 100644 drivers/mmc/host/cqhci.c
>>  create mode 100644 drivers/mmc/host/cqhci.h
>>
>>
>> Regards
>> Adrian
> 
> Kind regards
> Uffe
> 


  reply	other threads:[~2017-08-08  9:32 UTC|newest]

Thread overview: 61+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-07-21  9:49 [PATCH V4 00/11] mmc: Add Command Queue support Adrian Hunter
2017-07-21  9:49 ` [PATCH V4 01/11] mmc: core: Add mmc_retune_hold_now() Adrian Hunter
2017-08-07 13:44   ` Ulf Hansson
2017-07-21  9:49 ` [PATCH V4 02/11] mmc: core: Add members to mmc_request and mmc_data for CQE's Adrian Hunter
2017-08-07 13:51   ` Ulf Hansson
2017-08-08 11:33     ` Adrian Hunter
2017-07-21  9:49 ` [PATCH V4 03/11] mmc: host: Add CQE interface Adrian Hunter
2017-08-07 13:55   ` Ulf Hansson
2017-08-08 12:01     ` Adrian Hunter
2017-07-21  9:49 ` [PATCH V4 04/11] mmc: core: Turn off CQE before sending commands Adrian Hunter
2017-08-07 13:59   ` Ulf Hansson
2017-08-08 12:04     ` Adrian Hunter
2017-07-21  9:49 ` [PATCH V4 05/11] mmc: core: Add support for handling CQE requests Adrian Hunter
2017-08-07 14:21   ` Ulf Hansson
2017-08-10  7:53     ` Adrian Hunter
2017-07-21  9:49 ` [PATCH V4 06/11] mmc: mmc: Enable Command Queuing Adrian Hunter
2017-08-07 14:34   ` Ulf Hansson
2017-07-21  9:49 ` [PATCH V4 07/11] mmc: mmc: Enable CQE's Adrian Hunter
2017-08-07 14:51   ` Ulf Hansson
2017-08-10  9:49     ` Adrian Hunter
2017-07-21  9:49 ` [PATCH V4 08/11] mmc: block: Prepare CQE data Adrian Hunter
2017-08-07 15:24   ` Ulf Hansson
2017-07-21  9:49 ` [PATCH V4 09/11] mmc: block: Add CQE support Adrian Hunter
2017-07-22  9:23   ` Shawn Lin
2017-07-22  9:26   ` Shawn Lin
2017-07-24  6:44     ` Adrian Hunter
2017-08-01  8:57   ` Shawn Lin
2017-08-01 10:06     ` Adrian Hunter
2017-08-02  1:30       ` Shawn Lin
2017-08-08 12:07   ` Bough Chen
2017-08-09  0:55     ` Shawn Lin
2017-08-09  5:57       ` Adrian Hunter
2017-08-09  7:57         ` Bough Chen
2017-08-09  8:16           ` Adrian Hunter
2017-08-09  8:30             ` Adrian Hunter
2017-08-09  9:41               ` Bough Chen
2017-08-09 10:35                 ` Bough Chen
2017-08-09 12:45                   ` Adrian Hunter
2017-08-10 10:19                     ` Adrian Hunter
2017-08-10 10:38                       ` Bough Chen
2017-07-21  9:49 ` [PATCH V4 10/11] mmc: cqhci: support for command queue enabled host Adrian Hunter
2017-07-22  9:39   ` Shawn Lin
2017-07-24  7:36     ` Adrian Hunter
2017-07-24  8:52   ` Bough Chen
2017-07-24 10:21     ` Adrian Hunter
2017-07-31  6:40       ` Adrian Hunter
2017-07-31  7:03         ` Bough Chen
2017-07-31  7:03           ` Adrian Hunter
2017-07-31  7:18             ` Bough Chen
2017-07-31  7:43               ` Adrian Hunter
2017-07-21  9:49 ` [PATCH V4 11/11] mmc: sdhci-pci: Add CQHCI support for Intel GLK Adrian Hunter
2017-07-24  9:17 ` [PATCH V4 00/11] mmc: Add Command Queue support Shawn Lin
2017-07-24 10:09   ` Adrian Hunter
2017-07-25  0:34     ` Shawn Lin
2017-07-31  6:54       ` Adrian Hunter
2017-07-31  7:13         ` Shawn Lin
2017-08-03  0:50 ` Shawn Lin
2017-08-07 13:41 ` Ulf Hansson
2017-08-08  9:26   ` Adrian Hunter [this message]
2017-08-08 10:36     ` Ulf Hansson
2017-08-08 11:21       ` Adrian Hunter

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=08f77620-3efa-0532-9146-27bcae00b19a@intel.com \
    --to=adrian.hunter@intel.com \
    --cc=Yuliy.Izrailov@sandisk.com \
    --cc=alex.lemberg@sandisk.com \
    --cc=asutoshd@codeaurora.org \
    --cc=dongas86@gmail.com \
    --cc=haibo.chen@nxp.com \
    --cc=jh80.chung@samsung.com \
    --cc=kdorfman@codeaurora.org \
    --cc=linus.walleij@linaro.org \
    --cc=linux-mmc@vger.kernel.org \
    --cc=mateusz.nowak@intel.com \
    --cc=riteshh@codeaurora.org \
    --cc=shawn.lin@rock-chips.com \
    --cc=stummala@codeaurora.org \
    --cc=ulf.hansson@linaro.org \
    --cc=vbyravarasu@nvidia.com \
    --cc=zhangfei.gao@gmail.com \
    /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