Spdk/module/bdev
Shuhei Matsumoto 0ba9ba5c40 bdev/nvme: Reset I/O cancels reconnect timer and starts reconnection
Previously, if a reconnect timer was registered when a reset request
came, the reset request failed with -EBUSY. However, this means the
reset request was queued for a long time until the reconnect timer was
expired.

When a reconnect timer is registered, reset is not actually in progress.
Hence, a new reset request can cancel the reconnect timer and can start
reconnection safely.

Add a unit test case to verify this change.

Signed-off-by: Shuhei Matsumoto <smatsumoto@nvidia.com>
Change-Id: Ied8dd0ad822d2fd6829d88cd56cb36bd4fad13f9
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/16823
Reviewed-by: Ben Walker <benjamin.walker@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Community-CI: Mellanox Build Bot
Reviewed-by: Aleksey Marchuk <alexeymar@nvidia.com>
2023-05-05 00:10:11 +00:00
..
aio so_ver: increase all major versions 2023-01-24 08:37:21 +00:00
compress accel: move accel_module.h to include/spdk 2023-04-19 06:36:20 +00:00
crypto bdev/crypto: Put accel buffer when write completes 2023-05-02 18:50:41 +00:00
daos bdev/daos: using SPDK_CONTAINEROF instead of container_of 2023-04-25 10:10:48 +00:00
delay bdev/delay: add uuid option 2023-03-08 08:46:16 +00:00
error bdev/error: add option to provide UUID for error bdev 2023-04-13 12:12:58 +00:00
ftl module/bdev: Use error_response() rather than bool_response(false) for JSON RPCs 2023-01-31 21:40:09 +00:00
gpt bdev_gpt: use unique partition GUID as bdev UUID 2023-05-02 18:59:58 +00:00
iscsi bdev/iscsi: fix use-after-free in bdev_iscsi_command_cb() 2023-03-16 07:24:56 +00:00
lvol lvol: add spdk_lvol_is_degraded 2023-05-03 17:42:53 +00:00
malloc bdev/malloc: report accel sequence support 2023-04-19 06:36:20 +00:00
null bdev: delete UUID generation from ephemeral bdevs 2023-04-13 12:12:58 +00:00
nvme bdev/nvme: Reset I/O cancels reconnect timer and starts reconnection 2023-05-05 00:10:11 +00:00
ocf bdev/ocf: add bdev_ocf_reset_stats RPC 2023-05-04 14:05:43 +00:00
passthru bdev: remove spdk_bdev_ext_io_opts from spdk_bdev_io 2023-02-16 10:09:35 +00:00
raid module/raid: specify memory domain support per raid module 2023-04-17 09:36:34 +00:00
rbd bdev/rbd: Do not submit IOs through thread sending. 2023-04-27 09:35:04 +00:00
split so_ver: increase all major versions 2023-01-24 08:37:21 +00:00
uring include: add libgen.h to stdinc.h 2023-04-26 17:32:13 +00:00
virtio so_ver: increase all major versions 2023-01-24 08:37:21 +00:00
xnvme bdev/xnvme: Use bdev_unregister_by_name() to delete a xnvme bdev 2023-01-31 21:40:09 +00:00
zone_block module/bdev: Use error_response() rather than bool_response(false) for JSON RPCs 2023-01-31 21:40:09 +00:00
Makefile bdev/pmem: Removed bdev pmem implementation 2023-03-09 09:21:23 +00:00