Spdk/lib/bdev
Vitaliy Mysak 9686948334 ocf: implement metadata probe
Implement metadata probe functionality to load cache state
  from disk.
During metadata probe, we inspect UUIDs of core devices
  and create vbdev configurations based on them.
  Then, to start vbdev, we use load path (loadq = true).

After this change persistent metadata is officially supported,
  we can save and restore cache state from persistant storage.

WriteBack mode is now safe to use in respect to unexpected shutdowns,
  because all information about dirty data is also restored during cache load.

Change-Id: I6cf86aabd68177b88638a68ea6a5b78a1068a4d0
Signed-off-by: Vitaliy Mysak <vitaliy.mysak@intel.com>
Reviewed-on: https://review.gerrithub.io/c/spdk/spdk/+/455417
Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
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-07 18:18:42 +00:00
..
aio bdev/aio: An error code can be returned via the rpc interface. 2019-05-22 16:12:40 +00:00
compress bvdev/compress: move comp transform structs to static globals 2019-06-05 16:48:36 +00:00
crypto bdev/crypto: cleanup the vbdev_crypto_examine 2019-05-02 09:10:38 +00:00
delay bdev: Create a new delay vbdev module 2019-05-31 14:37:26 +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 misc/rpc: rename some C functions of rpc methods 2019-05-07 05:30:16 +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 env: Add free_space parameter to spdk_ring_enqueue 2019-06-05 05:23:58 +00:00
ocf ocf: implement metadata probe 2019-06-07 18:18:42 +00:00
passthru bdev/passthru: add error check in get buffer read callback 2019-05-20 17:02:27 +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: add additional NULL check for data iovec 2019-06-07 05:05:22 +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: make bdevs array for get_bdevs_iostat RPC 2019-05-08 22:43:00 +00:00
split misc/rpc: rename some C functions of rpc methods 2019-05-07 05:30:16 +00:00
uring bdev: Add io_uring bdev module 2019-03-22 18:51:48 +00:00
virtio env: Add free_space parameter to spdk_ring_enqueue 2019-06-05 05:23:58 +00:00
bdev.c bdev: directly use spdk_bdev_io_get_io_channel() where needed 2019-06-04 00:08:53 +00:00
Makefile bdev: Create a new delay vbdev module 2019-05-31 14:37:26 +00:00
part.c bdev: don't allow NVME_IO types for partitioned bdevs 2019-05-06 05:46:12 +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