public inbox for linux-mmc@vger.kernel.org
 help / color / mirror / Atom feed
From: Adrian Hunter <adrian.hunter@intel.com>
To: Shawn Lin <shawn.lin@rock-chips.com>
Cc: Ulf Hansson <ulf.hansson@linaro.org>,
	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>,
	David Griego <david.griego@linaro.org>,
	Sahitya Tummala <stummala@codeaurora.org>,
	Harjani Ritesh <riteshh@codeaurora.org>,
	Venu Byravarasu <vbyravarasu@nvidia.com>,
	Linus Walleij <linus.walleij@linaro.org>
Subject: Re: [PATCH V4 00/11] mmc: Add Command Queue support
Date: Mon, 24 Jul 2017 13:09:06 +0300	[thread overview]
Message-ID: <cbe0361a-0a8f-efed-cef0-c8d0da691ff7@intel.com> (raw)
In-Reply-To: <20fd5318-eeca-6c85-39fe-8b6a32321115@rock-chips.com>

On 24/07/17 12:17, Shawn Lin wrote:
> Hi Adrian,
> 
> On 2017/7/21 17:49, Adrian Hunter wrote:
>> Hi
>>
>> Here is V4 of the hardware command queue patches without the software
>> command queue patches.
>>
> 
> I see this log for the reboot test last weekend. One of my boards
> seems to easily trigger this WARN_ONCE.
> 
> [   10.012778] mmc1: cqhci: spurious TCN for tag 31

Tag 31 is DCMD.  DCMD can be problematic which is one of the reasons it is
optional.  In this case it looks like you are getting a TCN before the DCMD
is actually finished.  You should be able to see if that is the case by
dumping the registers when it happens, although you will need to stop
messages going to the console because that will be too slow.

> [   10.013332] ------------[ cut here ]------------
> [   10.013779] WARNING: CPU: 0 PID: 2596 at drivers/mmc/host/cqhci.c:721
> cqhci_irq+0x2cc/0x42c
> [   10.014520] Modules linked in:
> [   10.014837] CPU: 0 PID: 2596 Comm: sed Not tainted
> 4.13.0-rc1-next-20170720-00012-g9d9bf45 #33
> [   10.015595] Hardware name: Firefly-RK3399 Board (DT)
> [   10.016043] task: ffff80007b510000 task.stack: ffff80007a160000
> [   10.016575] PC is at cqhci_irq+0x2cc/0x42c
> [   10.016946] LR is at cqhci_irq+0x2cc/0x42c
> [   10.017321] pc : [<ffff0000087f7c3c>] lr : [<ffff0000087f7c3c>] pstate:
> 600001c5
> [   10.017974] sp : ffff80007ef11db0
> [   10.018275] x29: ffff80007ef11db0 x28: 0000000000000001
> [   10.018759] x27: ffff80007ba7d600 x26: 0000000000000001
> [   10.019242] x25: ffff000008d279a8 x24: ffff80007b8f4130
> [   10.019725] x23: ffff000008fb0d00 x22: 0000000000000002
> [   10.020208] x21: ffff80007ba7d000 x20: ffff80007b8f4118
> [   10.020690] x19: 000000000000001f x18: 0000000000000000
> [   10.021172] x17: 0000000000000000 x16: 0000000000000000
> [   10.021654] x15: 0000000000000000 x14: 00000000f7b60065
> [   10.022138] x13: 00000000ffc54040 x12: 0000000000000000
> [   10.022624] x11: 000000000000081b x10: 0000000000000006
> [   10.023105] x9 : 000000000000081c x8 : ffff00000853de20
> [   10.023587] x7 : ffff000008ec9df8 x6 : ffff00000900651b
> [   10.024070] x5 : 0000000000000000 x4 : 0000000000000000
> [   10.024553] x3 : 0000000000000000 x2 : ffff80007ef19970
> [   10.025035] x1 : ffff80007b510000 x0 : 0000000000000024
> [   10.025519] Call trace:
> [   10.025761] Exception stack(0xffff80007ef11be0 to 0xffff80007ef11d10)
> [   10.026342] 1be0: 000000000000001f 0001000000000000 ffff80007ef11db0
> ffff0000087f7c3c
> [   10.027040] 1c00: ffff000008d279a8 0000000000000001 ffff80007ba7d600
> 0000000000000001
> [   10.027738] 1c20: 0000000000000002 0000000000000000 ffff80007ef11db0
> ffff80007ef11db0
> [   10.028437] 1c40: ffff80007ef11d70 00000000ffffffc8 ffff80007ef11c80
> ffff00000810f980
> [   10.029135] 1c60: ffff80007ef11db0 ffff80007ef11db0 ffff80007ef11d70
> 00000000ffffffc8
> [   10.029833] 1c80: 0000000000000024 ffff80007b510000 ffff80007ef19970
> 0000000000000000
> [   10.030533] 1ca0: 0000000000000000 0000000000000000 ffff00000900651b
> ffff000008ec9df8
> [   10.031230] 1cc0: ffff00000853de20 000000000000081c 0000000000000006
> 000000000000081b
> [   10.031928] 1ce0: 0000000000000000 00000000ffc54040 00000000f7b60065
> 0000000000000000
> [   10.032624] 1d00: 0000000000000000 0000000000000000
> [   10.033068] [<ffff0000087f7c3c>] cqhci_irq+0x2cc/0x42c
> [   10.033541] [<ffff0000087f2c90>] sdhci_arasan_cqhci_irq+0x44/0x58
> [   10.034092] [<ffff0000087dec28>] sdhci_irq+0xb0/0xb74
> [   10.034554] [<ffff00000811096c>] __handle_irq_event_percpu+0xa0/0x128
> [   10.035133] [<ffff000008110a10>] handle_irq_event_percpu+0x1c/0x54
> [   10.035687] [<ffff000008110a8c>] handle_irq_event+0x44/0x74
> [   10.036192] [<ffff000008114040>] handle_fasteoi_irq+0x9c/0x154
> [   10.036717] [<ffff00000810fa7c>] generic_handle_irq+0x24/0x38
> [   10.037234] [<ffff0000081100fc>] __handle_domain_irq+0x60/0xac
> [   10.037759] [<ffff00000808173c>] gic_handle_irq+0xd4/0x17c
> 
>>
>> 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
>>
>>
>>
> 
> 


  reply	other threads:[~2017-07-24 10:16 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 [this message]
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
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=cbe0361a-0a8f-efed-cef0-c8d0da691ff7@intel.com \
    --to=adrian.hunter@intel.com \
    --cc=Yuliy.Izrailov@sandisk.com \
    --cc=alex.lemberg@sandisk.com \
    --cc=asutoshd@codeaurora.org \
    --cc=david.griego@linaro.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