numam-spdk/test
Konrad Sztyber c5ebb7ff99 bdev/nvme: use asynchronous ctrlr detach functions
This patch replaces the synchronous `spdk_nvme_detach()` calls with its
asynchronous counterparts in the controller unregister path.

An additional poller is introduced to periodically poll the NVMe driver
for detach completion.  Once the detach is completed, the poller is
unregistered and the nvme_ctrlr is destroyed.  The poller uses the same
period (1ms) as the async probe poller.

Since reset and detach cannot happen at the same time, reset_poller was
renamed to reset_detach_poller and it can now store the pointer either
to the reset or detach poller, depending on the circumstances.

Signed-off-by: Konrad Sztyber <konrad.sztyber@intel.com>
Change-Id: I5eb2dd6383d98d25d1f9748af08c1a13d18acb0e
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/8729
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Reviewed-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com>
Reviewed-by: Aleksey Marchuk <alexeymar@mellanox.com>
2021-10-04 15:00:35 +00:00
..
accel_engine test/accel_engine: add more test cases 2021-09-01 07:34:02 +00:00
app nvme_fuzz: pass trid on command line only 2021-09-27 10:55:34 +00:00
bdev bdevperf: prevent multiple performance statistics poller registering 2021-09-29 08:58:12 +00:00
blobfs event: Shift subsystem initialization code to a separate library 2021-05-24 10:12:50 +00:00
blobstore scheduler: Change main core frequency dynamically 2021-01-22 18:31:25 +00:00
common scheduler_dynamic: fix busy tsc accounting 2021-09-28 07:29:03 +00:00
compress test/nvmf: use recommended nvmf_create_subsystem rpc 2021-05-20 15:00:22 +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 autotest: Run dd tests under SPDK_TEST_URING 2021-05-20 15:15:33 +00:00
dma test/dma: Add functional test to verify DMA 2021-09-24 07:37:45 +00:00
dpdk_memory_utility check_format: Ignore shellcheck's SC2128 and SC2178 directives 2021-06-30 22:43:05 +00:00
env env/dpdk: revert 8f7d9ec "env/dpdk: Use the DPDK device count for IOMMU mapping" 2021-09-24 07:40:21 +00:00
event scheduler: create public API and subsystem for scheduler/governor 2021-09-07 07:33:03 +00:00
external_code markdownlint: enable rule MD040 2021-09-08 21:53:48 +00:00
ftl test/ftl: Use emulated zoned devices instead of ocssd 2021-09-21 07:52:48 +00:00
fuzz nvme_fuzz: pass trid on command line only 2021-09-27 10:55:34 +00:00
interrupt test/intr: correct without-thread situation 2021-07-30 08:21:43 +00:00
ioat build: Example applications build to build/example 2020-06-15 15:27:16 +00:00
iscsi_tgt iscsi_tgt/rpc_config: Give some extra time for the process to die 2021-07-29 07:03:01 +00:00
json_config scheduler: add scheduler subsystem JSON configuration 2021-09-07 07:33:03 +00:00
lvol test/lvol: rename lvol test script 2020-10-20 08:54:53 +00:00
make build: don't put out-of-tree ocf build in build/ dir 2021-08-17 08:54:30 +00:00
nvme test/nvme: add nvme_compliance test app 2021-09-28 07:30:28 +00:00
nvmf bdev/nvme: use asynchronous ctrlr detach functions 2021-10-04 15:00:35 +00:00
ocf check_format: Fixes for shellcheck's SC2251 directive 2021-06-30 22:43:05 +00:00
openstack test/openstack: Adjust environment for stack.sh 2021-09-23 07:40:25 +00:00
pmem build: Output executables from the app directory to build/bin 2020-06-15 15:27:16 +00:00
rpc autotest: Use rpc_cmd() for rpc plugin-based tests 2021-04-02 08:22:42 +00:00
rpc_client build: use DEPDIRS variables to build SPDK_LIB_LIST 2020-12-18 09:40:01 +00:00
rpc_plugins autotest: Use rpc_cmd() for rpc plugin-based tests 2021-04-02 08:22:42 +00:00
scheduler scheduler_dynamic: fix busy tsc accounting 2021-09-28 07:29:03 +00:00
setup bdev/nvme: Remove OCSSD support 2021-09-03 08:07:25 +00:00
spdkcli autotest: Don't override default amount of hugepages on Linux to 8GB 2021-06-24 17:33:10 +00:00
thread test/thread: Add poller_perf to evaluate cost to run poller 2021-08-20 07:29:42 +00:00
unit bdev/nvme: use asynchronous ctrlr detach functions 2021-10-04 15:00:35 +00:00
vhost test/vhost: enable BPF traces in performance tests 2021-08-23 08:48:05 +00:00
vmd test: replace VMD_WHITELIST with VMD_ALLOWED 2020-12-03 09:41:07 +00:00
Makefile test/dma: Add functional test to verify DMA 2021-09-24 07:37:45 +00:00
spdk_cunit.h test: remove leftover spdk_cunit declaration 2018-07-06 22:47:56 +00:00