linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Keith Busch <keith.busch@intel.com>
To: wenxiong <wenxiong@linux.vnet.ibm.com>
Cc: linux-nvme@lists.infradead.org, axboe@fb.com,
	linux-kernel@vger.kernel.org, wenxiong@us.ibm.com
Subject: Re: [PATCH V3] nvme-pci: Fixes EEH failure on ppc
Date: Wed, 28 Feb 2018 16:55:37 -0700	[thread overview]
Message-ID: <20180228235537.GK16002@localhost.localdomain> (raw)
In-Reply-To: <bf3a386a2b82dac84b681c14d5334632@linux.vnet.ibm.com>

On Wed, Feb 28, 2018 at 04:31:37PM -0600, wenxiong wrote:
> On 2018-02-15 14:05, wenxiong@linux.vnet.ibm.com wrote:
> > From: Wen Xiong <wenxiong@linux.vnet.ibm.com>
> > 
> > With b2a0eb1a0ac72869c910a79d935a0b049ec78ad9(nvme-pci: Remove watchdog
> > timer), EEH recovery stops working on ppc.
> > 
> > After removing whatdog timer routine, when trigger EEH on ppc, we hit
> > EEH in nvme_timeout(). We would like to check if pci channel is offline
> > or not at the beginning of nvme_timeout(), if it is already offline,
> > we don't need to do future nvme timeout process.
> > 
> > Add mrmory barrier before calling pci_channel_offline().
> > 
> > With the patch, EEH recovery works successfuly on ppc.
> > 
> > Signed-off-by: Wen Xiong <wenxiong@linux.vnet.ibm.com>
> 
> Hi Keith and All,
> 
> We have the newer Linux distro releases came out recently, so I got more
> reports for this issue.
> 
> Test teams have verified the patch in several distro kernel version(v4.14,
> v4.15).
> 
> 
> If you have any question about the V3 patch I submitted two weeks, Let me
> know.

Sorry, I'd nearly forgotten about this one.

We need a better change log. Could you help explain how this really
works? As I understand it, I would write it something like this, but
let me know if there's more to it:

  Triggering PPC EEH detection and handling requires a memory mapped
  read failure. The NVMe driver removed the periodic health check MMIO,
  so there's no early detection mechanism to trigger the recovery.

  Instead, the detection happens when the nvme driver handles an IO
  timeout event. Since this takes the pci channel offline, we do not
  want the driver to proceed with escalating its own recovery efforts
  that may conflict with the EEH handler. This patch ensures the driver
  will observe the channel was set to offline after a failed MMIO read
  and resets the IO timer so the EEH handler has a chance to recover
  the device.

  reply	other threads:[~2018-02-28 23:55 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-02-15 20:05 [PATCH V3] nvme-pci: Fixes EEH failure on ppc wenxiong
2018-02-28 22:31 ` wenxiong
2018-02-28 23:55   ` Keith Busch [this message]
     [not found]     ` <OFB428CB19.833F7B7C-ON00258243.005E4D59-86258243.005E7EAB@notes.na.collabserv.com>
2018-03-01 17:16       ` Keith Busch

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=20180228235537.GK16002@localhost.localdomain \
    --to=keith.busch@intel.com \
    --cc=axboe@fb.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-nvme@lists.infradead.org \
    --cc=wenxiong@linux.vnet.ibm.com \
    --cc=wenxiong@us.ibm.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;
as well as URLs for NNTP newsgroup(s).