All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ming Lei <ming.lei@redhat.com>
To: Chao Leng <lengchao@huawei.com>
Cc: Christoph Hellwig <hch@lst.de>,
	linux-nvme@lists.infradead.org, Yi Zhang <yi.zhang@redhat.com>,
	Sagi Grimberg <sagi@grimberg.me>, Keith Busch <kbusch@kernel.org>
Subject: Re: [PATCH 1/2] nvme: make NVMe freeze API reliably
Date: Tue, 6 Sep 2022 16:45:05 +0800	[thread overview]
Message-ID: <YxcIkV2slhTR9MHX@T590> (raw)
In-Reply-To: <e2568bdd-a3cb-7a94-8018-d1468f3dcdd4@huawei.com>

On Thu, Aug 25, 2022 at 06:02:33PM +0800, Chao Leng wrote:
> 
> 
> On 2022/8/21 16:47, Ming Lei wrote:
> > From: Keith Busch <kbusch@kernel.org>
> > 
> > In some corner cases[1], freeze wait and unfreeze API may be called on
> > unfrozen queue, add one per-ns flag of NVME_NS_FREEZE to make these
> > freeze APIs more reliably, then this kind of issues can be avoided.
> > And similar approach has been applied on stopping/quiescing nvme queues.
> This leads to another problem: the process that needs to be
> in the frozen state is not actually frozen.
> It's not safe.

The flag is just to control if queue wait is needed, blk_mq_freeze_queue_wait
can be done only the flag is set. Not sure how it isn't safe.

Meantime calling blk_mq_freeze_queue_wait() on queue not being started
to freeze is usually a bug, and I think WARN_ON_ONCE() can be added
in nvme_wait_freeze().


Thanks,
Ming



  parent reply	other threads:[~2022-09-06  8:45 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-08-21  8:47 [PATCH 0/2] nvme: make NVMe freeze API reliably Ming Lei
2022-08-21  8:47 ` [PATCH 1/2] " Ming Lei
2022-08-24 11:15   ` Hannes Reinecke
2022-08-24 14:07     ` Keith Busch
2022-08-25 10:02   ` Chao Leng
2022-09-06  4:49     ` Christoph Hellwig
2022-09-06  8:45     ` Ming Lei [this message]
2022-09-06  9:32       ` Chao Leng
2022-09-07  0:33         ` Ming Lei
2022-09-07  1:18           ` Chao Leng
2022-09-07  2:06             ` Ming Lei
2022-09-07  5:58               ` Chao Leng
2022-08-28 14:37   ` Sagi Grimberg
2022-08-21  8:47 ` [PATCH 2/2] nvme-pci: don't wait freeze during resetting Ming Lei
2022-08-25 10:05   ` Chao Leng
2022-08-25 11:34     ` Ming Lei
2022-08-25 13:42       ` Keith Busch
2022-08-25 14:15         ` Ming Lei
2022-08-26  1:27           ` Chao Leng
2022-08-28 14:37   ` Sagi Grimberg
2022-09-06  4:49   ` Christoph Hellwig
2022-08-24 11:57 ` [PATCH 0/2] nvme: make NVMe freeze API reliably Yi Zhang
2022-09-19 14:52 ` Christoph Hellwig
2022-09-20  0:51   ` Ming Lei

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=YxcIkV2slhTR9MHX@T590 \
    --to=ming.lei@redhat.com \
    --cc=hch@lst.de \
    --cc=kbusch@kernel.org \
    --cc=lengchao@huawei.com \
    --cc=linux-nvme@lists.infradead.org \
    --cc=sagi@grimberg.me \
    --cc=yi.zhang@redhat.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.