Spdk/module
Shuhei Matsumoto a76bbe3553 bdev/nvme: Disconnect and then free I/O qpair in a ctrlr reset sequence
As we do when deleting ctrlr_channel, disconnect and then free I/O
qpair in a ctrlr reset sequence.

Deleting ctrlr_channel and resetting ctrlr_channel may cause conflicts.
This patch processes such conflicts correctly.

If destroy_ctrlr_channel_cb() is executed between pending and executing
reset_destroy_qpair(), reset_destroy_qpair() is not executed because
ctrlr_channel is not found. In this case, destroy_qpair_channel()
starts disconnecting qpair and deletes ctrlr_channel. Then
disconnected_qpair_cb() releases a reference to poll group.

If destroy_ctrlr_channel_cb() is excuted between executing reset_destroy_qpair()
and disconnected_qpair_cb(), destroy_ctrlr_channel_cb() skips
ctrlr_channel for a reset sequence.

Change-Id: I1f49f74b94aefbea178680aa53ded3a12876c676
Signed-off-by: Shuhei Matsumoto <smatsumoto@nvidia.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/10766
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
..
accel accel/idxd: add and respect flag to support writes to PMEM 2022-03-04 21:56:54 +00:00
bdev bdev/nvme: Disconnect and then free I/O qpair in a ctrlr reset sequence 2022-03-21 10:49:11 +00:00
blob so_ver: increase all major versions 2022-01-31 15:29:56 +00:00
blobfs so_ver: increase all major versions 2022-01-31 15:29:56 +00:00
env_dpdk so_ver: increase all major versions 2022-01-31 15:29:56 +00:00
event nvmf: remove deprecated conn_sched parameter 2022-02-15 14:38:37 +00:00
scheduler scheduler: create and parse JSON values for dynamic scheduler params 2022-03-16 08:19:26 +00:00
sock uring: fix heap-use-after-free bug in sock_flush_client 2022-03-11 08:04:59 +00:00
Makefile scheduler: create public API and subsystem for scheduler/governor 2021-09-07 07:33:03 +00:00