Spdk/module/bdev
Shuhei Matsumoto aca0d56e3d bdev/nvme: Reconnect ctrlr after it is disconnected at completion poller
spdk_nvme_ctrlr_disconnect() will be made asynchronous in the
following patches and so we will need to have some changes.

spdk_nvme_ctrlr_disconnect() disconnects adminq and ctrlr synchronously
now.

If spdk_nvme_ctrlr_disconnect() is made asynchronous,
spdk_nvme_ctrlr_process_admin_completions() will complete to disconnect
adminq and ctrlr, and will return -ENXIO only if adminq is disconnected.

However even now spdk_nvme_ctrlr_process_admin_completions() returns
-ENXIO if adminq is disconnected.

So as a preparation, set a callback before calling spdk_nvme_ctrlr_disconnect()
and call the callback if it is set and spdk_nvme_ctrlr_process_admin_completions()
returns -ENXIO.

Besides, fix the return value of bdev_nvme_poll_adminq() in this patch.

Change-Id: I2559f86bb8cf9a92b5b386ed816c00b08c9832df
Signed-off-by: Shuhei Matsumoto <smatsumoto@nvidia.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/10950
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
..
aio bdev/aio: Correct error message when IO fails 2022-02-22 09:03:51 +00:00
compress module/bdev/compress: print a reasonable message on create error 2022-03-08 07:50:49 +00:00
crypto bdev/crypto: Add qp_desc_nr to struct vbdev_crypto 2022-03-16 08:20:03 +00:00
delay so_ver: increase all major versions 2022-01-31 15:29:56 +00:00
error so_ver: increase all major versions 2022-01-31 15:29:56 +00:00
ftl so_ver: increase all major versions 2022-01-31 15:29:56 +00:00
gpt so_ver: increase all major versions 2022-01-31 15:29:56 +00:00
iscsi so_ver: increase all major versions 2022-01-31 15:29:56 +00:00
lvol so_ver: increase all major versions 2022-01-31 15:29:56 +00:00
malloc accel: plumb accel flags through operations that need them 2022-03-04 21:56:54 +00:00
null bdev/null: call spdk_bdev_module_fini_done() even if not registered 2022-03-02 08:39:40 +00:00
nvme bdev/nvme: Reconnect ctrlr after it is disconnected at completion poller 2022-03-21 10:49:11 +00:00
ocf bdev/ocf: Improve OCF mpools 2022-03-02 08:34:39 +00:00
passthru so_ver: increase all major versions 2022-01-31 15:29:56 +00:00
pmem so_ver: increase all major versions 2022-01-31 15:29:56 +00:00
raid so_ver: increase all major versions 2022-01-31 15:29:56 +00:00
rbd so_ver: increase all major versions 2022-01-31 15:29:56 +00:00
split so_ver: increase all major versions 2022-01-31 15:29:56 +00:00
uring so_ver: increase all major versions 2022-01-31 15:29:56 +00:00
virtio so_ver: increase all major versions 2022-01-31 15:29:56 +00:00
zone_block so_ver: increase all major versions 2022-01-31 15:29:56 +00:00
Makefile bdev: move bdev_rpc library contents 2020-09-25 11:43:42 +00:00