Spdk/module/bdev/nvme
Shuhei Matsumoto 3182be6d26 bdev/nvme: Fail fast I/O qpair if poll_group_process_completions() returns negated errno
If qpair is disconnected asynchronously, it takes time from detecting
transport error to actually disconnected. We should avoid using the
path as soon as possible after detecting any transport error.

Poll group clears I/O path cache if it finds transport error and avoid
using the path which had transport error.

These changes will reduce the failover time.

Signed-off-by: Shuhei Matsumoto <smatsumoto@nvidia.com>
Change-Id: I00580159a84372a115ed5e62a6ce13eed4368999
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/11329
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: Ben Walker <benjamin.walker@intel.com>
2022-03-21 10:49:11 +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: Alloc qpair context dynamically on nvme_ctrlr_channel 2022-03-15 09:05:09 +00:00
bdev_nvme.c bdev/nvme: Fail fast I/O qpair if poll_group_process_completions() returns negated errno 2022-03-21 10:49:11 +00:00
bdev_nvme.h bdev/nvme: Reconnect ctrlr after it is disconnected at completion poller 2022-03-21 10:49:11 +00:00
Makefile so_ver: increase all major versions 2022-01-31 15:29:56 +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