From: keith.busch@intel.com (Keith Busch)
Subject: [PATCH] nvme/pci: Poll CQ on timeout
Date: Tue, 28 Feb 2017 11:00:57 -0500 [thread overview]
Message-ID: <20170228160056.GA15639@localhost.localdomain> (raw)
In-Reply-To: <20170228141017.GC20317@lst.de>
On Tue, Feb 28, 2017@03:10:17PM +0100, Christoph Hellwig wrote:
> On Fri, Feb 24, 2017@05:59:28PM -0500, Keith Busch wrote:
> > If an IO timeout occurs, it's helpful to know if the controller did not
> > post a completion or the driver missed an interrupt. While we never expect
> > the latter, this patch will make it possible to tell the difference so
> > we don't have to guess.
>
> Do you have any good real use case for it? I mostly don't like it
> becuase it ties us to polling for a specific tag, something I'd like
> to change in the ->poll API.
I don't expect this to often catch anything, but this is a cheap way of
constraining the problem just by having this in place: the "Timeout"
message definitely means the device did not post an entry on that
command's completion queue, so either the device is broken or we messed
up the queue mapping.
In the event it does trigger (I've seen this only a handlful of times
on new platforms and devices, as well as legacy IRQs), we know a whole
lot more about the problem, compared to just seeing "Timeout".
If you want to remove the tag specific polling, I can look into an
alternative.
next prev parent reply other threads:[~2017-02-28 16:00 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-02-24 22:59 [PATCH] nvme/pci: Poll CQ on timeout Keith Busch
2017-02-27 14:42 ` Sagi Grimberg
2017-02-28 14:10 ` Christoph Hellwig
2017-02-28 16:00 ` Keith Busch [this message]
2017-02-28 17:44 ` Jens Axboe
2017-04-20 8:56 ` Johannes Thumshirn
2017-04-20 14:20 ` Keith Busch
2017-04-20 15:45 ` Jens Axboe
2017-04-20 16:17 ` Sagi Grimberg
2017-04-20 16:28 ` Keith Busch
2017-04-20 16:31 ` Jens Axboe
2017-04-21 6:39 ` Christoph Hellwig
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=20170228160056.GA15639@localhost.localdomain \
--to=keith.busch@intel.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.