[LSF/MM?BFP TOPIC] Block-layer device resets
Hannes Reinecke
hare at suse.de
Mon Feb 2 15:10:05 PST 2026
On 2/2/26 18:27, Bart Van Assche wrote:
> On 2/1/26 9:06 AM, Hannes Reinecke wrote:
>> While we could easily terminate the controller, the specification
>> also requires us to terminate all outstanding commands.
> What specification is the above referring to?
>
> Regarding terminating outstanding commands, doesn't how to do this
> depend on the storage protocol? Isn't the recommended procedure for
> NVMe to delete and re-create all I/O submission and completion queues?
> This procedure doesn't require support in the block layer for aborting
> individual commands.
>
Sure, all drivers/subsystems implement a similar mechanism. But this is
pretty much implementation specific, and typically wrapped into the
device teardown path.
But that typically also involves tearing down and re-creating the device
node which doesn't lend itself for some configurations.
This proposal is to ensure that all I/O is flushed from the device
without having to reconfigure anything; typical use-case would be
when this device is used as a backing device for a nvmet namespace.
Cheers,
Hannes
--
Dr. Hannes Reinecke Kernel Storage Architect
hare at suse.de +49 911 74053 688
SUSE Software Solutions GmbH, Frankenstr. 146, 90461 Nürnberg
HRB 36809 (AG Nürnberg), GF: I. Totev, A. McDonald, W. Knoblich
More information about the Linux-nvme
mailing list