Spdk/lib/bdev
Vitaliy Mysak 0b4df54fb2 ocf: use trylock in vbdev_ocf.c
Use new trylock API to prevent lockups when using OCF cleaner.
Starting and stoping OCF bdev becomes asynchronous with this patch.

Using trylock means that we have to poll function that does locking each
  time we want to initiate some operation on cache instance.
  This is the reason why management functions become asynchronous.
Each management operation now has a _poll() operation associated with it.
  _poll() uses trylock and continues when cache is locked.

Signed-off-by: Vitaliy Mysak <vitaliy.mysak@intel.com>
Reviewed-on: https://review.gerrithub.io/c/spdk/spdk/+/447888 (master)

(cherry picked from commit 9000deb734)
Change-Id: I83b9fbe87c27433e178583411b87a68b8efaf58e
Signed-off-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
Reviewed-on: https://review.gerrithub.io/c/spdk/spdk/+/457251
Reviewed-by: Darek Stojaczyk <dariusz.stojaczyk@intel.com>
Reviewed-by: Ben Walker <benjamin.walker@intel.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
2019-06-17 15:25:31 +00:00
..
aio bdev/aio: cleanup bdev_aio.h 2019-03-01 13:03:55 +00:00
compress bdev/compress: replace RPC parm name with pm_path 2019-04-26 20:07:19 +00:00
crypto bdev/crypto: add new uninit call needed for dpdk 19.02 2019-04-24 22:00:10 +00:00
error bdev: make spdk_bdev_register_module_xxx function names predictable 2019-02-11 23:56:53 +00:00
gpt bdev: switch to spdk_*malloc(). 2019-04-09 06:30:42 +00:00
iscsi bdev/iscsi: fix iscsi bdev wrong lun id 2019-04-01 01:16:51 +00:00
lvol bdev: deprecate spdk_vbdev_register 2019-04-04 08:28:31 +00:00
malloc bdev: Make malloc bdev use the new zero copy mechanism 2019-04-23 18:38:39 +00:00
null bdev/null : Clean up module resources that failed to initialize. 2019-04-24 22:25:47 +00:00
nvme bdev/nvme: fix issue about coredump which caused by assert error. 2019-04-22 15:23:11 +00:00
ocf ocf: use trylock in vbdev_ocf.c 2019-06-17 15:25:31 +00:00
passthru bdev: deprecate spdk_vbdev_register 2019-04-04 08:28:31 +00:00
pmem bdev: process failure of spdk_bdev_io_get_buf_cb in each bdev module 2019-02-27 07:28:15 +00:00
raid bdev/raid: Make destroy_raid_bdev RPC wait for completion by callback 2019-06-16 08:46:05 +00:00
rbd bdev: process failure of spdk_bdev_io_get_buf_cb in each bdev module 2019-02-27 07:28:15 +00:00
rpc bdev: remove delete_bdev RPC 2019-03-01 08:50:07 +00:00
split bdev: make spdk_bdev_register_module_xxx function names predictable 2019-02-11 23:56:53 +00:00
uring bdev: Add io_uring bdev module 2019-03-22 18:51:48 +00:00
virtio virtio: switch to spdk_*malloc(). 2019-03-28 07:39:31 +00:00
bdev.c bdev: Emulate zero copy support when necessary 2019-04-23 18:38:39 +00:00
Makefile bdev/compress: add compression vbdev module 2019-03-27 14:51:22 +00:00
part.c bdev: deprecate spdk_vbdev_register 2019-04-04 08:28:31 +00:00
scsi_nvme.c bdev: move error union to internal spdk_bdev_io struct 2018-06-26 20:04:07 +00:00
vtune.c mk: don't use '-include spdk/config.h' 2018-10-02 23:13:32 +00:00