Spdk/module/bdev/nvme
Shuhei Matsumoto 80e81273e2 bdev/nvme: Do not use ctrlr for I/O submission if reconnect failed repeatedly
If ctrlr_loss_timeout_sec is set to -1, reconnect is tried repeatedly
indefinitely, and I/Os continue to be queued.

This patch adds another option fast_io_fail_timeout_sec, a flag
fast_io_fail_timedout to nvme_ctrlr.

If the time fast_io_fail_timeout_sec passed after starting reset,
set fast_io_fail_timedout to true not to use the path for I/O submission.

fast_io_fail_timeout_sec is initialized to zero as same as
ctrlr_loss_timeout_sec and reconnect_delay_sec.

The name of the parameter follows the famous DM-multipath, its fast_io_fail_tmo.

Change-Id: Ib870cf8e2fd29300c47f1df69617776f4e67bd8c
Signed-off-by: Shuhei Matsumoto <smatsumoto@nvidia.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/10301
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Community-CI: Mellanox Build Bot
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Aleksey Marchuk <alexeymar@mellanox.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
2022-01-17 14:25:15 +00:00
..
bdev_nvme_cuse_rpc.c bdev/nvme: Rename nvme_bdev_ctrlr by nvme_ctrlr 2021-07-13 08:57:33 +00:00
bdev_nvme_rpc.c bdev/nvme: Do not use ctrlr for I/O submission if reconnect failed repeatedly 2022-01-17 14:25:15 +00:00
bdev_nvme.c bdev/nvme: Do not use ctrlr for I/O submission if reconnect failed repeatedly 2022-01-17 14:25:15 +00:00
bdev_nvme.h bdev/nvme: Do not use ctrlr for I/O submission if reconnect failed repeatedly 2022-01-17 14:25:15 +00:00
Makefile bdev/nvme: Remove common.h/common.c 2021-09-08 08:06:39 +00:00
nvme_rpc.c bdev/nvme: Remove common.h/common.c 2021-09-08 08:06:39 +00:00
vbdev_opal_rpc.c bdev/nvme: Remove common.h/common.c 2021-09-08 08:06:39 +00:00
vbdev_opal.c bdev/nvme: Use an RB_TREE to hold namespaces in the controller 2021-10-18 07:49:52 +00:00
vbdev_opal.h bdev/nvme: Remove common.h/common.c 2021-09-08 08:06:39 +00:00