In the following patches, spdk_nvme_ctrlr_disconnect_io_qpair() will be changed to be asynchronous, spdk_nvme_ctrlr_disconnect_io_qpair() will be called first and then spdk_nvme_ctrlr_free_io_qpair() after the qpair is actually disconnected. We will not be able to keep the current bdev_nvme_destroy_qpair() function. As a preparation, inline bdev_nvme_destroy_qpair() and remove it. Additionally, this patch has the following changes. Previously I/O qpair was freed and then I/O path caches were cleared. Both are SPDK thread local. So there is no dependency for the ordering of these two operations. However, it will reduce the size of the following patches if we clear I/O path caches before freeing I/O qpair when the qpair is disconnected. Hence we clear I/O path caches and then free I/O qpair. Remove DTRACE for bdev_nvme_destroy_qpair() for now. It will be restored in the following patches. Furthermore, fix potential NULL pointer acces in bdev_nvme_create_qpair(). Change-Id: I0ab78ccb0d240e56b95b53179341afcd909a31f6 Signed-off-by: Shuhei Matsumoto <smatsumoto@nvidia.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/10746 Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com> Community-CI: Mellanox Build Bot 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> |
||
---|---|---|
.. | ||
accel | ||
bdev | ||
blob | ||
blobfs | ||
env_dpdk | ||
event | ||
scheduler | ||
sock | ||
Makefile |