Spdk/include/spdk_internal
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
..
assert.h include: Move the remainder of the code base to stdinc.h 2017-05-08 13:20:36 -07:00
bdev.h bdev: remove vbdevs during spdk_bdev_unregister() 2018-01-24 15:50:04 -05:00
copy_engine.h event/subsystem/bdev: asynchronous SPDK finish 2017-10-27 13:03:55 -04:00
event.h event/subsystem: remove unused params from g_next_subsystem->fini 2017-11-17 13:10:52 -05:00
log.h log: rename SPDK_TRACE_* to SPDK_LOG_* 2017-12-07 12:23:19 -05:00
lvolstore.h bdev: Renamed lvol->old_name to lvol->unique_id 2018-01-04 13:15:09 -05:00
mock.h test/mock: add pthread_self 2017-09-19 17:15:15 -04:00
utf.h json_internal.h: rename to utf.h and place in spdk_internal 2018-01-11 10:57:38 -05:00
virtio.h virtio: move vdev->name allocation to generic virtio 2018-01-23 22:49:21 -05:00