[PATCH 4/6] nvme-mpath: support controller crd when failing over request
Christoph Hellwig
hch at lst.de
Wed Sep 2 06:43:00 PDT 2026
On Sun, Aug 23, 2026 at 11:49:00AM +0300, Sagi Grimberg wrote:
> When failing over a request (due to a path based status) we should
> repect controller crd returned in the nvme completion as much as
> possible. Hence we want to delay the failover command execution by
> the controller crdt.
>
> We allocate a new nvme_mpath_failover_timer referencing the request
> stolen bios in a staging list, and when the command retry delay expires,
> and only then the bios are moved to the mpath head requeue list which is
> immediately kicked to re-submit these bios. If we failed to allocate
> a fot, we fallback to the existing behavior.
>
> Given that we now have a new staging list for mpath devices, we drain
> them when removing the device.
Given that we only have a few potential CRD levels, what about having
the "container" for the requing statically preallocated for each?
More information about the Linux-nvme
mailing list