Spdk/lib/bdev/lvol
Tomasz Zawadzki b6aaba0852 bdev: remove vbdevs during spdk_bdev_unregister()
spdk_vbdev_unregister() is part of internal bdev API,
yet bdev module that uses spdk_vbdev_register() directly
will not be removed correctly when using delete_bdev RPC.
spdk_vbdev_unregister() is now consolidated with
spdk_bdev_unregister().

This comes up when deleting lvol bdev, as it does not use
spdk_bdev_part_* functions.
base_bdev->vbdevs entry was not removed for bdev that lvs
is created on.

Additionally patch expands test to create lvol bdev,
after removing it using delete_bdev RPC.
With ASAN enabled this would report accessing
already freed memory previously.

Change-Id: I9547e83862e2daa50355d56a1c9f453aaa6cfdb8
Signed-off-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
Reviewed-on: https://review.gerrithub.io/395711
Tested-by: SPDK Automated Test System <sys_sgsw@intel.com>
Reviewed-by: Daniel Verkamp <daniel.verkamp@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
2018-01-24 15:50:04 -05:00
..
Makefile lvol: Logical volume implementation 2017-09-14 19:30:54 -04:00
vbdev_lvol_rpc.c util: add spdk_strerror() wrapper with TLS support 2018-01-04 15:00:09 -05:00
vbdev_lvol.c bdev: remove vbdevs during spdk_bdev_unregister() 2018-01-24 15:50:04 -05:00
vbdev_lvol.h lvol: remove vbdev APIs from public lvol.h API 2017-12-01 16:36:12 -05:00