numam-spdk/lib
Dariusz Stojaczyk 3788c907bb rte_vhost: fix double free on shutdown
The vhost connection can be closed
concurrently from 2 places:
 * the connection thread itself
 * rte_vhost_driver_unregister
The connection thread will terminate
the connection if any recv error
occured. The unregister function
will terminate the connection
together with the thread.
However, there is no sychronization
between those two. The connection
thread runs in the background
without any mutex.

The rte_vhost_driver_unregister
now signals the connection thread
to terminate itself and waits
until it's killed.

Change-Id: I012e97ebb8a79edcb2c17c28b2fc7e8041bf92b3
Signed-off-by: Dariusz Stojaczyk <dariuszx.stojaczyk@intel.com>
Reviewed-on: https://review.gerrithub.io/383085
Reviewed-by: Pawel Wodkowski <pawelx.wodkowski@intel.com>
Reviewed-by: Daniel Verkamp <daniel.verkamp@intel.com>
Tested-by: SPDK Automated Test System <sys_sgsw@intel.com>
2017-10-23 15:35:25 -04:00
..
bdev rte_virtio: move pci_dump_json_config out of #ifdef 2017-10-23 15:35:14 -04:00
blob blobstore: do not allow for spdk_bs_unload if blobs are still open 2017-10-23 15:31:48 -04:00
blobfs blobfs: fix bstype debug prints 2017-10-17 16:26:02 -04:00
conf log: Use SPDK_ERRLOG in lieu of fprintf(stderr 2017-05-09 11:28:28 -07:00
copy subsystem: remove fini return code 2017-10-10 10:56:34 -04:00
cunit include: Move the remainder of the code base to stdinc.h 2017-05-08 13:20:36 -07:00
env_dpdk env/dpdk: unlink hugepage_info and config files immediately for single process apps 2017-10-20 19:43:26 -04:00
event bdev: remove spdk_bdev_poller_start() lcore option 2017-10-18 20:28:29 -04:00
ioat copy: return 0 on success and appropriate errno on failure 2017-09-25 13:56:29 -04:00
iscsi iscsi: add spdk_iscsi_init_grp_create() function 2017-10-19 13:11:09 -04:00
json json: add function to write UTF-16LE strings 2017-07-12 18:12:52 -04:00
jsonrpc log: rename SPDK_TRACELOG to SPDK_DEBUGLOG 2017-08-29 13:25:58 -04:00
log log: change spdk_trace_dump() to take a void * 2017-10-17 16:26:02 -04:00
lvol lvol: fix lvol_req NULL check in spdk_lvol_destroy() 2017-10-23 12:17:07 -04:00
nbd nbd, nvmf: fix clang 4.0 packed member warnings 2017-09-07 12:15:45 -04:00
net subsystem: remove fini return code 2017-10-10 10:56:34 -04:00
nvme nvme_rdma: set retry_count field in rdma_conn_param 2017-10-11 13:59:10 -04:00
nvmf lib/nvmf: Create a shared buffer waiting list 2017-10-18 12:50:51 -04:00
rocksdb blob_bdev: hotremove support 2017-09-28 12:46:18 -04:00
rpc rpc: add get_rpc_methods RPC call 2017-08-01 13:43:14 -04:00
scsi scsi_bdev: increase max I/O size to 4 MiB 2017-10-23 11:50:16 -04:00
trace lib: replace strerror with strerror_r 2017-08-15 16:47:01 -04:00
ut_mock test/mock: add pthread_self 2017-09-19 17:15:15 -04:00
util blob: defer calling unload callback until dev is destroyed 2017-09-26 19:10:28 -04:00
vhost rte_vhost: fix double free on shutdown 2017-10-23 15:35:25 -04:00
Makefile lvol: Logical volume implementation 2017-09-14 19:30:54 -04:00