From: Christoph Hellwig <hch@lst.de>
To: Sagi Grimberg <sagi@grimberg.me>
Cc: Keith Busch <kbusch@kernel.org>, Christoph Hellwig <hch@lst.de>,
linux-nvme@lists.infradead.org,
James Smart <james.smart@broadcom.com>
Subject: Re: [PATCH v3 2/9] nvme-fabrics: allow to queue requests for live queues
Date: Tue, 25 Aug 2020 09:13:45 +0200 [thread overview]
Message-ID: <20200825071345.GF29268@lst.de> (raw)
In-Reply-To: <77e27c4e-f939-2c14-8e63-209197f1133c@grimberg.me>
On Mon, Aug 24, 2020 at 01:02:40AM -0700, Sagi Grimberg wrote:
> I checked again, and regarding the comment:
>
> "I'm still rather bothered with the admin queue exception. And given that
> the q_usage_counter problem should only really be an issue for file system
> requests, as passthrough requests do not automatically get retried why
> can't we just reject all user command to be symetric and straight forward?
> The callers in userspace need to be able to cope with retryable errors
> anyway."
>
> blk_mq_alloc_request calls blk_queue_enter, which means that if we don't
> let them in, controller reset can hang, just like in normal fs I/O.
Yes. But the difference is that they don't get retrieѕ, but instead just
fail.
> So we either keep this exception for admin commands, or we also let
> them through as it seems to be safe with the current code (from the
> reset forward-progress perspective).
>
> I vote to remove this exception altogether...
To me the right answer would be to reject user commands on the admin
or I/O queue for the not live controller as the callers need to handle
it. That seems to make more sense to me than a special admin queue
exception.
_______________________________________________
Linux-nvme mailing list
Linux-nvme@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-nvme
next prev parent reply other threads:[~2020-08-25 7:13 UTC|newest]
Thread overview: 44+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-08-20 5:36 [PATCH v3 0/9] fix possible controller reset hangs in nvme-tcp/nvme-rdma Sagi Grimberg
2020-08-20 5:36 ` [PATCH v3 1/9] nvme-fabrics: don't check state NVME_CTRL_NEW for request acceptance Sagi Grimberg
2020-08-20 6:02 ` Christoph Hellwig
2020-08-20 20:49 ` James Smart
2020-08-20 5:36 ` [PATCH v3 2/9] nvme-fabrics: allow to queue requests for live queues Sagi Grimberg
2020-08-20 6:09 ` Christoph Hellwig
2020-08-20 16:58 ` Sagi Grimberg
2020-08-20 20:45 ` James Smart
2020-08-20 22:13 ` Sagi Grimberg
2020-08-20 22:17 ` James Smart
2020-08-21 6:22 ` Christoph Hellwig
2020-08-21 15:22 ` James Smart
2020-08-21 19:44 ` Sagi Grimberg
2020-08-23 15:19 ` James Smart
2020-08-24 8:06 ` Sagi Grimberg
2020-08-24 8:02 ` Sagi Grimberg
2020-08-25 7:13 ` Christoph Hellwig [this message]
2020-08-25 15:00 ` Sagi Grimberg
2020-08-25 15:41 ` James Smart
2020-08-25 17:35 ` Sagi Grimberg
2020-09-04 20:26 ` Sagi Grimberg
2020-09-08 9:05 ` Christoph Hellwig
2020-09-08 16:47 ` Sagi Grimberg
2020-09-08 16:48 ` Christoph Hellwig
2020-09-08 19:56 ` Sagi Grimberg
2020-08-20 20:54 ` James Smart
2020-08-20 20:56 ` James Smart
2020-08-20 5:36 ` [PATCH v3 3/9] nvme: have nvme_wait_freeze_timeout return if it timed out Sagi Grimberg
2020-08-20 6:09 ` Christoph Hellwig
2020-08-20 5:36 ` [PATCH v3 4/9] nvme-tcp: serialize controller teardown sequences Sagi Grimberg
2020-08-20 5:36 ` [PATCH v3 5/9] nvme-tcp: fix timeout handler Sagi Grimberg
2020-08-20 5:36 ` [PATCH v3 6/9] nvme-tcp: fix reset hang if controller died in the middle of a reset Sagi Grimberg
2020-08-20 5:36 ` [PATCH v3 7/9] nvme-rdma: serialize controller teardown sequences Sagi Grimberg
2020-08-20 21:04 ` James Smart
2020-08-20 22:16 ` Sagi Grimberg
2020-08-21 21:08 ` James Smart
2020-08-20 5:36 ` [PATCH v3 8/9] nvme-rdma: fix timeout handler Sagi Grimberg
2020-08-20 6:10 ` Christoph Hellwig
2020-08-20 21:37 ` James Smart
2020-08-20 5:36 ` [PATCH v3 9/9] nvme-rdma: fix reset hang if controller died in the middle of a reset Sagi Grimberg
2020-08-20 6:10 ` Christoph Hellwig
2020-08-24 18:29 ` [PATCH v3 0/9] fix possible controller reset hangs in nvme-tcp/nvme-rdma Sagi Grimberg
2020-08-25 7:16 ` Christoph Hellwig
2020-08-25 15:35 ` James Smart
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=20200825071345.GF29268@lst.de \
--to=hch@lst.de \
--cc=james.smart@broadcom.com \
--cc=kbusch@kernel.org \
--cc=linux-nvme@lists.infradead.org \
--cc=sagi@grimberg.me \
/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.