Re: [PATCH v4 0/2] nvme-multipath: expose path_state via sysfs
Guixin Liu <[email protected]> Wed, 5 Aug 2026 09:55:46 +0800
| Newsgroups | org.infradead.lists.linux-nvme |
|---|---|
| Message-ID | <[email protected]> |
Hi Keith, Christoph, gentle ping on this patch set.
Any feedback would be appreciated. thanks.
Best Regards,
Guixin Liu
在 2026/7/24 17:00, Guixin Liu 写道:
> This series adds a read-only "path_state" sysfs attribute to each NVMe
> multipath path namespace device (/sys/block/nvmeXcYnZ/path_state), giving
> userspace visibility into whether a path is currently usable for I/O and,
> if not, the reason it is disabled.
>
> Today users have to piece this together from the controller state and
> various namespace flags. The new attribute reports the path selection
> state directly, and is kept in sync with the path selection logic by
> sharing a single nvme_path_get_state() helper.
>
> Patch 1 adds the attribute and the helper; patch 2 documents it in the
> stable NVMe sysfs ABI file.
>
> Changes since v3:
> - Use single-token sysfs values ("enabled", "ctrl-down", "ana-pending",
> "ns-not-ready") instead of the composite "disabled (reason)" and
> "enabled (optimized)/(non-optimized)" strings, following the sysfs
> convention of exporting one simple value per attribute.
> - Drop the "enabled (optimized)" vs "enabled (non-optimized)"
> distinction; the ANA access state is already exposed through the
> existing per-path ana_state attribute.
> - Add a second patch documenting path_state in the stable NVMe sysfs
> ABI (Documentation/ABI/stable/sysfs-nvme).
>
> Changes since v2:
> - Factor path disable checks into nvme_path_get_state() helper returning
> enum nvme_path_state, and rebuild nvme_path_is_disabled() on top of it
> to keep path selection logic and sysfs reporting in sync. (Nilay Shroff)
> - Distinguish "enabled (optimized)" vs "enabled (non-optimized)" based on
> ANA state. (Keith Busch)
>
> Changes since v1:
> - Show specific disabled reason instead of just "disabled":
> "disabled (ctrl_down)", "disabled (ana_pending)",
> "disabled (ns_not_ready)". (Nilay Shroff)
>
> Guixin Liu (2):
> nvme-multipath: expose path_state via sysfs
> nvme-multipath: document path_state sysfs attribute
>
> Documentation/ABI/stable/sysfs-nvme | 21 +++++++++++++
> drivers/nvme/host/multipath.c | 47 +++++++++++++++++++++++++----
> drivers/nvme/host/nvme.h | 1 +
> drivers/nvme/host/sysfs.c | 4 ++-
> 4 files changed, 66 insertions(+), 7 deletions(-)
>
>
> base-commit: 7caaa4120d8dd73bb251410e1d007b4131d024c4