Spdk/lib
Darek Stojaczyk 5557c59c15 nvme/pcie: don't allow constructing a controller from secondary process
With various possibilities to leak the rte_pci_device in the
primary process, we could technically construct the controller
in secondary. The nvme stack is not prepared for this and
will fail to initialize the device, but will still leak the
device object memory.

This patch adds an extra check to prevent any controller from
being constructed in secondary process.

Change-Id: I772f42b541c5db53310362b6595cebf9a30e8491
Signed-off-by: Darek Stojaczyk <dariusz.stojaczyk@intel.com>
Reviewed-on: https://review.gerrithub.io/434407
Chandler-Test-Pool: SPDK Automated Test System <sys_sgsw@intel.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com>
Reviewed-by: Ben Walker <benjamin.walker@intel.com>
2018-11-30 16:25:16 +00:00
..
bdev lib/trace: show specific usage of trace mask 2018-11-30 14:52:28 +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 memory: fix contiguous memory calculation for unaligned buffers 2018-11-29 15:16:13 +00:00
event lib/trace: show specific usage of trace mask 2018-11-30 14:52:28 +00:00
ioat ioat: change the return type of ioat_channel_destruct() to be void 2018-09-18 22:41:00 +00:00
iscsi lib/trace: show specific usage of trace mask 2018-11-30 14:52:28 +00:00
json json: Use not C++ style comments // but C-style comments /* */ 2018-10-31 22:01:47 +00:00
jsonrpc jsonrpc client: move around functions so no forwad declaration is needed 2018-11-19 20:30:03 +00:00
log lib/log: assert proper log level before setting 2018-11-29 19:20:44 +00:00
lvol lvol: check spdk_lvol for NULL before dereferencing it 2018-11-20 15:01:57 +00:00
nbd nbd: fixup return codes 2018-11-28 22:55:09 +00:00
net lib: fix typos in the lib directory 2018-08-24 17:15:12 +00:00
nvme nvme/pcie: don't allow constructing a controller from secondary process 2018-11-30 16:25:16 +00:00
nvmf lib/trace: show specific usage of trace mask 2018-11-30 14:52:28 +00:00
reduce reduce: clean up a few items found during code review 2018-11-20 14:50:27 +00:00
rocksdb build: remove xx_MODULES_LINKER_ARGS and xx_MODULES_FILES 2018-11-28 16:43:01 +00:00
rpc rpc: add function to get the current RPC state 2018-11-08 23:04:50 +00:00
scsi lib/trace: show specific usage of trace mask 2018-11-30 14:52:28 +00:00
sock net: add asynchronous initialization and finish 2018-11-07 17:08:27 +00:00
thread lib/thread: check for NULL return on _get_thread() 2018-11-20 15:03:17 +00:00
trace lib/trace: show specific usage of trace mask 2018-11-30 14:52:28 +00:00
ut_mock ut_mock: rename library from spdk_mock to ut_mock 2018-11-20 14:57:57 +00:00
util util: make spdk_parse_ip_addr return -EINVAL instead -1 2018-10-12 23:34:27 +00:00
vhost vhost/nvme: remove VHOST_USER_NVME_IO_CMD socket message 2018-11-27 13:24:42 +00:00
virtio virtio: support dynamic memory registrations 2018-10-23 18:02:12 +00:00
Makefile reduce: add configure option 2018-11-08 00:01:47 +00:00