Re: [PATCH v3] nvme-multipath: add fail_if_no_path sysfs attribute
From: Krishna Iyer
Date: Thu Sep 24 2026 - 02:35:37 EST
On 9/23/26 6:07 PM, Keith Busch wrote:
> I get that failfast is at the controller scope, but that seems okay:
> when the transport is down, every namespace behind that controller is
> equally without a path. When the controller is live, the per-namespace
> inaccessible case is handled separately by the ANA state, so namespace
> heads that lose access bail and the rest can carry on.
>
> Is your intention to have some namespaces wait for reconnect longer than
> others?
Yes, exactly. Some namespaces should keep waiting out the reconnect
while others should stop waiting and fail their parked I/O, decided
by a condition only userspace can see. Here that condition is a
killed process stuck in D state on parked I/O that nothing will ever
consume (for us a SIGKILLed VM the host must reap), and it could be
any consumer known to be gone. Failing that namespace lets the
process exit, while namespaces with live users behind the same
controllers keep queueing and carry on when paths return. A
controller wide timeout cannot separate the two, and there is no
duration to pick up front since the trigger is userspace observing
the event. Reconnect itself is untouched either way. So the kernel
provides the per namespace switch and the decision stays in
userspace.
Thanks,
Krishna