When a I/O or admin passthrough failed, if the corresponding nvme_ctrlr is not available, we should failover to another path. When no path was found, if there is at least one nvme_ctrlr which is not failed, we should wait until it is recovered. We should improve error recovery not only for multipath (multipath is "multipath") but also for failover (multipath is omitted or "failover"). To do this easily, clarify the conditions of availability and failure of nvme_ctrlr and realize them by helper functions. Use new helper functions for other cases to improve readability too. Signed-off-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com> Change-Id: I716731f72811d2ec4dfc91f9eadb191d75739af6 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/10381 Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Ben Walker <benjamin.walker@intel.com> Reviewed-by: Aleksey Marchuk <alexeymar@mellanox.com> |
||
---|---|---|
.. | ||
accel | ||
bdev | ||
blob | ||
blobfs | ||
env_dpdk | ||
event | ||
scheduler | ||
sock | ||
Makefile |