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> |
||
---|---|---|
.. | ||
bdev_zone.c | ||
bdev.c | ||
compress.c | ||
crypto.c | ||
gpt | ||
mt | ||
nvme | ||
part.c | ||
pmem | ||
raid | ||
scsi_nvme.c | ||
vbdev_lvol.c | ||
vbdev_zone_block.c | ||
Makefile |