Spdk/lib
Maciej Szwed e68e2e749b lvol: do not unload/destroy lvs when operation on lvol is pending
There is a scenario where we can try do unload or remove
lvol store while lvol present on that lvol store is being
closed or destroyed.

Scenario:
1. send delete_bdev rpc command
2. command returns before lvol is actually closed/destroyed
   (does not wait for callback)
3. send destroy_lvol_store rpc command
4. lvs is destroyed before lvol is destroyed
5. lvol destroy callback is called on destroeyd lvol store

Aboive scenario can be reproduced using:
spdk/test/vhost/spdk_vhost.sh --integrity-lvol-scsi

Signed-off-by: Maciej Szwed <maciej.szwed@intel.com>
Change-Id: Ie715279195bd4b1145cf05d4f5a8477b4fac87f7
Reviewed-on: https://review.gerrithub.io/383595
Reviewed-by: Daniel Verkamp <daniel.verkamp@intel.com>
Tested-by: SPDK Automated Test System <sys_sgsw@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
2017-10-26 17:23:58 -04:00
..
bdev bdev: add callback to spdk bdev unregister and bdev destruct 2017-10-26 17:23:58 -04:00
blob blob: fix bug when specifing cluster size < 4096 2017-10-26 14:21:22 -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: do not unload/destroy lvs when operation on lvol is pending 2017-10-26 17:23:58 -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 test/vhost: Test Plan for vhost initiator. 2017-10-26 14:07:59 -04:00
Makefile lvol: Logical volume implementation 2017-09-14 19:30:54 -04:00