numam-spdk/test
Darek Stojaczyk ebb89b20ca nvme: detach PCI device in secondary process
We only detached the PCI device on the controller destruction,
which happens just once - in the primary process, but secondary
process needs the PCI detach as well.

Requesting to hotremove the NVMe PCIe controller in secondary
process is broken, because DPDK will still keep the device
reference and won't allow SPDK to hotplug it again.

Fix this by detaching the local PCI device whenever removing
a secondary process from spdk_nvme_ctrlr. This does require
an additional transport check in the generic NVMe layer, but
I found it an overkill to create a multi-process transport
abstraction just for this case.

Change-Id: I812dc1c878ade5b149556806228a2afcb49f0b17
Signed-off-by: Darek Stojaczyk <dariusz.stojaczyk@intel.com>
Reviewed-on: https://review.gerrithub.io/431487 (master)
Reviewed-on: https://review.gerrithub.io/c/spdk/spdk/+/448364
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Reviewed-by: Ben Walker <benjamin.walker@intel.com>
2019-03-22 08:16:19 +00:00
..
app make: simplify rdma dependency linking 2018-09-14 22:56:46 +00:00
bdev test/bdev: change crypto device conf based on environment 2018-10-24 23:29:28 +00:00
blobfs scripts: use python3 in all scripts 2018-09-14 22:24:30 +00:00
blobstore vbdev_crypto.c: Always initialize crypto drivers up front 2018-10-24 23:29:28 +00:00
common test: Disable crypto tests 2019-03-21 12:24:27 +00:00
config_converter scripts: add config converter 2018-09-18 15:24:40 +00:00
cpp_headers build: add @: to remaining 'all' targets 2018-02-14 17:38:25 -05:00
env memory: fix contiguous memory calculation for unaligned buffers 2018-12-06 17:08:38 +00:00
event test/event_perf: use less memory 2018-07-26 05:28:52 +00:00
ioat ioat: remove ioat kperf kernel driver test harness 2018-04-30 17:11:53 +00:00
iscsi_tgt test/iscsi: exclude *.o from ext4test.sh rsync 2018-10-15 22:20:17 +00:00
json_config vbdev_crypto.c: Always initialize crypto drivers up front 2018-10-24 23:29:28 +00:00
lvol Check file permissions in the check_format script 2018-10-04 23:08:12 +00:00
nvme mk: introduce ldflags print target 2018-10-16 12:40:43 +00:00
nvmf test/nvmf: Delete unneeded references to start_subsystem_init 2018-10-22 22:33:13 +00:00
pmem Check file permissions in the check_format script 2018-10-04 23:08:12 +00:00
rpc_client jsonrpc_client: make ID and method optional when starting request 2018-10-18 16:07:37 +00:00
spdkcli vbdev_crypto.c: Always initialize crypto drivers up front 2018-10-24 23:29:28 +00:00
unit nvme: detach PCI device in secondary process 2019-03-22 08:16:19 +00:00
vhost test/vhost: Fix vhost live migration 2018-10-15 22:49:06 +00:00
Makefile jsonrpc-client: add new C client library 2018-10-11 20:07:44 +00:00
spdk_cunit.h test: remove leftover spdk_cunit declaration 2018-07-06 22:47:56 +00:00