Spdk/lib
Darek Stojaczyk 04ee899fcf nvme: improve probe error handling in MP even further
In cases we probe without a specific trid, the underlying
rte_bus_probe() in spdk_pci_enumerate() might fail to
initialize some devices, but still return with code 0,
That's technically correct, as we asked just to probe
devices on the bus and that's what it did. Some devices might
have been initialized, others not. In secondary process we
blindly assumed all devices were probed successfully, which
might have eventually led to assert failures, as current
process was not on the ctrlr->active_procs list.

To fix it, just add an additional check before attaching
the controller in secondary process.

Change-Id: If015b1e562052a9189ed1a48091b209bd2dd5f2a
Signed-off-by: Darek Stojaczyk <dariusz.stojaczyk@intel.com>
Reviewed-on: https://review.gerrithub.io/431727
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Ben Walker <benjamin.walker@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
2018-11-02 18:30:09 +00:00
..
bdev Bdev/QoS: return actual submitted IO count 2018-11-02 18:02:37 +00:00
blob bit_array: return UINT32_MAX if no cleared bits found 2018-10-08 17:03:33 +00:00
blobfs blobfs: align rw buffer to lba of device underneath 2018-09-18 16:35:57 +00:00
conf conf: don't strdup name if section already exist 2018-05-17 17:13:19 +00:00
copy lib/copy: unregister copy engine on finish 2018-10-15 17:42:20 +00:00
env_dpdk dpdkbuild: stop building ipsec library with make 2018-10-31 21:55:37 +00:00
event nvmf: add rpc for getting transport information 2018-11-02 18:04:06 +00:00
ioat ioat: change the return type of ioat_channel_destruct() to be void 2018-09-18 22:41:00 +00:00
iscsi mk: add framework for defining inter-lib dependencies 2018-11-01 21:25:55 +00:00
json json: Use not C++ style comments // but C-style comments /* */ 2018-10-31 22:01:47 +00:00
jsonrpc jsonrpc: simplify parsing client response 2018-10-18 16:07:37 +00:00
log log: update tracelog usage message 2018-10-24 18:25:37 +00:00
lvol lvol: _spdk_add_lvs_to_list: break loop immediately if find 2018-09-14 03:56:35 +00:00
nbd nbd: add support for io_wait implement in nbd 2018-10-02 22:36:01 +00:00
net lib: fix typos in the lib directory 2018-08-24 17:15:12 +00:00
nvme nvme: improve probe error handling in MP even further 2018-11-02 18:30:09 +00:00
nvmf nvmf: don't implicitly create the transport in tgt listen. 2018-11-02 18:04:06 +00:00
rocksdb blobfs: add a new API to return file's unique ID 2018-08-29 16:29:22 +00:00
rpc rpc: g_rpc_lock_path: remove redundant plus 2018-09-04 22:21:04 +00:00
scsi scsi: Use not C++ style comments // but C-style comments /* */ 2018-10-31 22:01:47 +00:00
sock sock: set the fd with non_block flag. 2018-10-15 17:57:31 +00:00
thread nvmf: change the return type of calloc failed 2018-11-02 17:56:40 +00:00
trace trace: remove alias concept 2018-09-05 18:03:43 +00:00
ut_mock test: Simplify the mock library 2018-08-09 17:18:23 +00:00
util util: make spdk_parse_ip_addr return -EINVAL instead -1 2018-10-12 23:34:27 +00:00
vhost vhost/blk: check against hotremoved bdev in GET_CONFIG handler 2018-10-23 17:54:46 +00:00
virtio virtio: support dynamic memory registrations 2018-10-23 18:02:12 +00:00
Makefile mk: add framework for defining inter-lib dependencies 2018-11-01 21:25:55 +00:00