blobstore: close bdev on destroy
Now spdk_bdev_create_bs_dev() opens the underlaying spdk_bdev. Due to that spdk_bdev should be closed when bs_dev is destroyed. Signed-off-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com> Change-Id: I0805f29abfeb52ff1db067bad7b7e0f13fc39398 Reviewed-on: https://review.gerrithub.io/368351 Tested-by: SPDK Automated Test System <sys_sgsw@intel.com> Reviewed-by: Jim Harris <james.r.harris@intel.com> Reviewed-by: Daniel Verkamp <daniel.verkamp@intel.com>
This commit is contained in:
parent
fc58acea51
commit
c303ba2c16
@ -52,6 +52,12 @@ __get_bdev(struct spdk_bs_dev *dev)
|
|||||||
return ((struct blob_bdev *)dev)->bdev;
|
return ((struct blob_bdev *)dev)->bdev;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static inline struct spdk_bdev_desc *
|
||||||
|
__get_desc(struct spdk_bs_dev *dev)
|
||||||
|
{
|
||||||
|
return ((struct blob_bdev *)dev)->desc;
|
||||||
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
bdev_blob_io_complete(struct spdk_bdev_io *bdev_io, bool success, void *arg)
|
bdev_blob_io_complete(struct spdk_bdev_io *bdev_io, bool success, void *arg)
|
||||||
{
|
{
|
||||||
@ -135,6 +141,9 @@ bdev_blob_destroy_channel(struct spdk_bs_dev *dev, struct spdk_io_channel *chann
|
|||||||
static void
|
static void
|
||||||
bdev_blob_destroy(struct spdk_bs_dev *bs_dev)
|
bdev_blob_destroy(struct spdk_bs_dev *bs_dev)
|
||||||
{
|
{
|
||||||
|
struct spdk_bdev_desc *desc = __get_desc(bs_dev);
|
||||||
|
|
||||||
|
spdk_bdev_close(desc);
|
||||||
free(bs_dev);
|
free(bs_dev);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user