From: paul.grabinar@ranbarg.com (Paul Grabinar)
Subject: CQ Doorbells can be touched after queue deleted
Date: Tue, 30 Sep 2014 19:32:18 +0100 [thread overview]
Message-ID: <542AF732.3060706@ranbarg.com> (raw)
Hi All,
I've encountered an interesting issue with the driver as in v3.17-rc7.
The NVMe specification defines writing to CQ doorbells for non-existent
queues as "undefined", so it is probably not a good idea to do this.
I'm aware of at least one drive that gets very upset if you try.
The case I hit was where there is I/O running to the drive, but the
drive is being reset in the kthread due to not responding to abort requests.
When an I/O request came in, nvme_process_cq was called from
nvme_make_request, but the queue no longer exists as it has been torn
down by the reset.
During nvme_process_cq, the doorbell is updated, which upsets the drive.
This is a bit of a corner case, but it has happened.
We probably need to skip the doorbell update if the queue has been deleted.
next reply other threads:[~2014-09-30 18:32 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-09-30 18:32 Paul Grabinar [this message]
2014-09-30 19:41 ` CQ Doorbells can be touched after queue deleted Keith Busch
2014-09-30 19:55 ` Paul Grabinar
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=542AF732.3060706@ranbarg.com \
--to=paul.grabinar@ranbarg.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.