All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ming Lei <ming.lei@redhat.com>
To: Hannes Reinecke <hare@suse.de>
Cc: lsf-pc <lsf-pc@lists.linux-foundation.org>,
	"linux-block@vger.kernel.org" <linux-block@vger.kernel.org>,
	"linux-nvme@lists.infradead.org" <linux-nvme@lists.infradead.org>
Subject: Re: [LSF/MM/BFP TOPIC] Block-layer device resets
Date: Wed, 4 Feb 2026 09:14:02 +0800	[thread overview]
Message-ID: <aYKdWsdnSVrZ3UC7@fedora> (raw)
In-Reply-To: <65937263-912c-4250-af26-054b2b6be72b@suse.de>

On Tue, Feb 03, 2026 at 06:51:25AM +0100, Hannes Reinecke wrote:
> On 2/3/26 04:14, Ming Lei wrote:
> > Hi Hannes,
> > 
> > On Sun, Feb 01, 2026 at 06:06:52PM +0100, Hannes Reinecke wrote:
> > > Hi all,
> > > 
> > > We are currently working on implementing cross-controller resets for
> > > NVMe, which requires to send a command to the target which then should
> > > terminate all commands on a given controller.
> > 
> > Can you provide a little background why this reset is required? And for
> > solve which problem?
> > 
> Sure. It got triggered by me wanting to use a ublk device as a backing
> device for nvmet namespace.

ublk supports it, either delete & re-add the disk or use UBLK_F_USER_RECOVERY &
UBLK_F_QUIESCE for keeping disk node.

> During a nvme reconnect the target is supposed to abort/flush all
> outstanding commands on the backing device. As this is a block device
> we would need to have an interface into the block layer allowing us
> to do so.

It could be hard to provide such generic(ioctl) block interface:

1) use queue freeze

- hang risk, because some or many block devices don't implement timeout or
error handling

2) use queue quiesce

- still need driver cooperation for draining the inflight IOs

Basically the hard part is in driver side.

Thanks,
Ming


  reply	other threads:[~2026-02-04  1:14 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-02-01 17:06 [LSF/MM?BFP TOPIC] Block-layer device resets Hannes Reinecke
2026-02-02  1:46 ` Damien Le Moal
2026-02-02 23:04   ` Hannes Reinecke
2026-02-03 12:19     ` Nilay Shroff
2026-02-04  1:43       ` Hannes Reinecke
2026-02-02 17:27 ` Bart Van Assche
2026-02-02 23:10   ` Hannes Reinecke
2026-02-03  3:14 ` Ming Lei
2026-02-03  5:51   ` [LSF/MM/BFP " Hannes Reinecke
2026-02-04  1:14     ` Ming Lei [this message]
2026-02-04  1:50       ` Hannes Reinecke

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=aYKdWsdnSVrZ3UC7@fedora \
    --to=ming.lei@redhat.com \
    --cc=hare@suse.de \
    --cc=linux-block@vger.kernel.org \
    --cc=linux-nvme@lists.infradead.org \
    --cc=lsf-pc@lists.linux-foundation.org \
    /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.