Spdk/test/unit/lib/bdev
Tomasz Kulasek d7e065be93 blobstore: clone-snapshot blobstore relations
This commit provides an API to obtain an information about
snapshot and clone relations.

The main objective is:

 1) Determinate if we can delete snapshot (if have some created
    clones),

 2) Provide an information about parent/children nodes to the upper
    layer (e.g. lvol)

Realization:

 1) Structure parent-children is stored in the blob store object
    and updated on:

     a) blob store load,

     b) blob create/delete,

 2) Full information about parent-children is provided via new API:
    spdk_blob_get_parent() and spdk_blob_get_children(),

Note:

    While we don't store an information about these relations in the
    blob store, we need to open all blobs on blob store load to create
    it. It should be considered that it have an impact on the blobstore
    loading performance.

Change-Id: Ie0237fa5b93af01aa73d1f68ac1694e653fb75e5
Signed-off-by: Tomasz Kulasek <tomaszx.kulasek@intel.com>
Reviewed-on: https://review.gerrithub.io/405025
Tested-by: SPDK Automated Test System <sys_sgsw@intel.com>
Reviewed-by: Maciej Szwed <maciej.szwed@intel.com>
Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Reviewed-by: Daniel Verkamp <daniel.verkamp@intel.com>
2018-04-20 15:22:53 -04:00
..
bdev.c test/unit/bdev: mock out thread for tests. 2018-04-04 17:05:22 -04:00
gpt test: move test_env.c under test/common/lib 2018-03-29 00:31:24 -04:00
mt bdev: Fix race condition when testing whether QoS is enabled 2018-04-17 21:47:12 -04:00
part.c test/unit/part: mock out thread for tests. 2018-04-04 17:05:22 -04:00
pmem bdev/pmem: add conf support to test in blockdev.sh 2018-04-03 14:14:29 -04:00
scsi_nvme.c test: use spdk.unittest.mk in bdev unit tests 2018-02-14 11:07:05 -05:00
vbdev_lvol.c blobstore: clone-snapshot blobstore relations 2018-04-20 15:22:53 -04:00
Makefile bdev/pmem: change all NVML strings to PMDK 2018-04-07 00:07:57 -04:00