[PATCH RESEND 0/3] nvme/mpath: fix missed namespaces in ana state update
Anton Eidelman
anton.eidelman at gmail.com
Sun Sep 12 11:54:56 PDT 2021
Fixed two issues in nvme_update_ana_state() that caused ana_work
to miss existing namespaces and consequently a failure to update
the namespace ANA state based on the ANA log page.
1) A plain bug: we skipped an nsid in desc->nsids in a certain
combination of nsids present and nsids reports in the ANA log,
and failed to match this nsid to an existing namespace.
2) Unhandled situation when scan_work appended new namespaces to
ctrl->namespaces and did not sort the list yet.
In such transient state ana_work would fail to match nsids
to those new namespaces.
Both issues potentially caused some namespaces to get stuck
in an incorrect ANA state, e.g. to never become live.
Anton Eidelman (3):
nvme/multipath: fix failure to update ns ana state
nvme/multipath: cosmetic: keep ns nsid locally
nvme/multipath: fix stale ana state for namespaces just added by scan
work
drivers/nvme/host/multipath.c | 17 ++++++++++++++---
1 file changed, 14 insertions(+), 3 deletions(-)
--
2.25.1
More information about the Linux-nvme
mailing list