All of lore.kernel.org
 help / color / mirror / Atom feed
From: Brian King <brking@linux.vnet.ibm.com>
To: Tejun Heo <tj@kernel.org>, wenxiong@linux.vnet.ibm.com
Cc: jgarzik@pobox.com, linux-ide@vger.kernel.org,
	Wen Xiong <wenxiong@us.ibm.com>
Subject: Re: [PATCH] ahci: Add support for EEH error recovery
Date: Thu, 14 May 2015 10:44:18 -0500	[thread overview]
Message-ID: <5554C2D2.7040700@linux.vnet.ibm.com> (raw)
In-Reply-To: <20150514151331.GI11388@htj.duckdns.org>

On 05/14/2015 10:13 AM, Tejun Heo wrote:
> Hello, Wen.
> 
> On Wed, May 13, 2015 at 08:35:19PM -0500, wenxiong@linux.vnet.ibm.com wrote:
>> From: Wen Xiong <wenxiong@linux.vnet.ibm.com>
>>
>> This patch adds the callback functions to support EEH error
>> recovery in ahci driver. Also adds the code in ahci_error_handler
>> to issue an MMIO load then check if it is in EEH. If it is in EEH,
>> ahci_error_handler will wait until EEH recovery is completed.
> 
> Can you please explain why we would want this?  What does it buy us?

So, on the Power platform, the pci_error_handlers map to our EEH recovery.
In that case, without this patch, if we hit any sort of PCIe error, we
won't be able to recover and we'll lose all access to the ahci disks.
This could be the adapter trying to access an invalid DMA address due
to a transient hardware issue, or it could be due to a driver bug giving
the adapter an invalid address. It could also be other various PCIe
errors that cause our PCIe bridge chip to isolate the device and
place it into the EEH "frozen" state. When this occurs, if the driver
associated with the hardware does not have these handlers registered,
powerpc arch kernel code will hotplug remove the adapter, recover the
adapter, then hotplug add it back. This works OK for some devices,
but generally not so well for storage devices with mounted filesystems,
which would tend to go readonly in this case.

-Brian

-- 
Brian King
Power Linux I/O
IBM Linux Technology Center



  reply	other threads:[~2015-05-14 15:44 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-05-14  1:35 [PATCH] ahci: Add support for EEH error recovery wenxiong
2015-05-14 15:13 ` Tejun Heo
2015-05-14 15:44   ` Brian King [this message]
2015-05-14 15:48     ` Tejun Heo
2015-05-14 16:09       ` Brian King

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=5554C2D2.7040700@linux.vnet.ibm.com \
    --to=brking@linux.vnet.ibm.com \
    --cc=jgarzik@pobox.com \
    --cc=linux-ide@vger.kernel.org \
    --cc=tj@kernel.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 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.