By a recent improvement, failure of I/O qpair creation is ignored if the nvme_ctrlr is being reset or scheduled to reconnect. However, failure of I/O qpair creation is not ignored if a new I/O channel is allocated. It is normal to allocate a new I/O channel when a nvme_ctrlr is being reset or scheduled to reconnect. Fix this bug by relaxing the condition to ignore the result of bdev_nvme_create_qpair() to if reconnect_delay_sec is non-zero and bdev_retry_count is non-zero. If reconnect_delay_sec is non-zero, reconnect will be tried sooner or later, and if bdev_retry_count is non-zero, submitted IOs will be queued until it succeeds. Signed-off-by: Shuhei Matsumoto <smatsumoto@nvidia.com> Change-Id: Icf26e1ea65d292f9b8d24966abe25907d2cc33ec Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/14446 Community-CI: Mellanox Build Bot Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Aleksey Marchuk <alexeymar@nvidia.com> Reviewed-by: Ben Walker <benjamin.walker@intel.com> |
||
---|---|---|
.. | ||
accel | ||
bdev | ||
blob | ||
blobfs | ||
env_dpdk | ||
event | ||
scheduler | ||
sock | ||
Makefile |