Spdk/test
Shuhei Matsumoto d22497a72c bdev/nvme: Process pending destruct ctrlr request by adding an new variable
The recent refactoring removed the destruct poller and change the
reset processing to destruct ctrlr after its completion by conditionally
sending message.

But differentiating callback function is difficult if we reset multiple
ctrlrs.

If nvme_bdev_ctrlr->destruct is set, any new reset cannot start. So we can
use an new variable and always execute the callback function.

Add an new variable pending_destruct to struct nvme_bdev_ctrlr, and set
pending_destruct if ctrlr->ref is zero and ctrlr->destruct is true, and
then start destruct ctrlr if ctrlr->destruct_after_reset is set after
clearing pending resets.

Signed-off-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com>
Change-Id: I9f34c42a40c5a5da54611e7871aef8c58117a56a
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/6714
Community-CI: Broadcom CI
Community-CI: Mellanox Build Bot
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Reviewed-by: Changpeng Liu <changpeng.liu@intel.com>
Reviewed-by: Aleksey Marchuk <alexeymar@mellanox.com>
2021-03-22 09:45:53 +00:00
..
accel_engine accel_engine test: Add the test case for accel_engine. 2021-01-21 15:49:40 +00:00
app lib/iscsi: Pass the range (offset and length) to iscsi_conn_read_data_segment() 2021-02-23 08:52:20 +00:00
bdev lib/bdev: move to spdk_bdev_open_ext() 2021-03-05 08:33:45 +00:00
blobfs rocksdb: Change absolut SPDK path in RocksDB build to relative path 2021-03-09 08:50:27 +00:00
blobstore scheduler: Change main core frequency dynamically 2021-01-22 18:31:25 +00:00
common pkgdep/git: Apply pci_aer_centos patch 2021-03-18 14:43:22 +00:00
compress script/gen_nvme: do not generate legacy configuration 2020-10-22 17:08:41 +00:00
config_converter scripts/config_converter: skip sections not present in legacy config 2021-01-15 08:32:10 +00:00
cpp_headers queue_extras: use SPDK_CONTAINEROF 2019-10-07 15:06:01 +00:00
dd test/dd: Lower the number of block size tests 2020-08-20 09:27:21 +00:00
dpdk_memory_utility build: Output executables from the app directory to build/bin 2020-06-15 15:27:16 +00:00
env env/dpdk: Use the DPDK device count for IOMMU mapping 2021-01-22 18:32:53 +00:00
event test/scheduler: application to test behaviour of schedulers 2021-01-22 18:31:25 +00:00
external_code test/external_code: out-of-tree NVMe driver tests 2021-03-09 08:28:22 +00:00
ftl scripts: replace PCI_WHITELIST with PCI_ALLOWED 2020-12-03 09:41:07 +00:00
fuzz test/iscsi: remove VPP tests 2020-08-17 08:19:46 +00:00
ioat build: Example applications build to build/example 2020-06-15 15:27:16 +00:00
iscsi_tgt script/gen_nvme: do not generate legacy configuration 2020-10-22 17:08:41 +00:00
json_config lib/bdev: delay bdev_register notification til after examine 2021-01-15 08:28:57 +00:00
lvol test/lvol: rename lvol test script 2020-10-20 08:54:53 +00:00
make test/check_so_deps: avoid second read of config file 2021-03-18 13:23:59 +00:00
nvme test/nvme: fix e2edp tests when md_size > 8 bytes 2021-03-18 13:20:41 +00:00
nvmf test/nvmf: Make sure RoCEv2 protocol is used by irdma platform 2021-03-03 08:12:26 +00:00
ocf ocf/rpc: Add bdev_ocf_set_cache_mode method 2021-03-18 14:39:09 +00:00
openstack test/openstack: retry git clone when failed 2021-03-08 10:48:36 +00:00
pmem build: Output executables from the app directory to build/bin 2020-06-15 15:27:16 +00:00
rpc build: Output executables from the app directory to build/bin 2020-06-15 15:27:16 +00:00
rpc_client build: use DEPDIRS variables to build SPDK_LIB_LIST 2020-12-18 09:40:01 +00:00
scheduler test/scheduler: Print minimum supported frequency by given cpu 2021-03-18 13:25:09 +00:00
spdkcli Revert "lib/event: do not spawn a thread for each reactor" 2021-02-01 08:04:51 +00:00
unit bdev/nvme: Process pending destruct ctrlr request by adding an new variable 2021-03-22 09:45:53 +00:00
vhost test/vhost: Fix SPDK cpumask for distribute_cores 2021-03-15 09:29:47 +00:00
vmd test: replace VMD_WHITELIST with VMD_ALLOWED 2020-12-03 09:41:07 +00:00
Makefile build: add option to disable building unit tests 2020-03-10 09:12:21 +00:00
spdk_cunit.h test: remove leftover spdk_cunit declaration 2018-07-06 22:47:56 +00:00