bdev/rbd: unregitster the bdev when app exit.
Change-Id: I086fab8211c6ac71ab2eb3f5ac16f507484f79f9 Signed-off-by: Cunyin Chang <cunyin.chang@intel.com> Reviewed-on: https://review.gerrithub.io/390088 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>
This commit is contained in:
parent
30dfc6d505
commit
b54855f87f
@ -229,6 +229,10 @@ bdev_rbd_flush(struct bdev_rbd *disk, struct spdk_io_channel *ch,
|
||||
static int
|
||||
bdev_rbd_destruct(void *ctx)
|
||||
{
|
||||
struct bdev_rbd *rbd = ctx;
|
||||
|
||||
TAILQ_REMOVE(&g_rbds, rbd, tailq);
|
||||
bdev_rbd_free(rbd);
|
||||
return 0;
|
||||
}
|
||||
|
||||
@ -468,12 +472,10 @@ static const struct spdk_bdev_fn_table rbd_fn_table = {
|
||||
static void
|
||||
bdev_rbd_library_fini(void)
|
||||
{
|
||||
struct bdev_rbd *rbd;
|
||||
struct bdev_rbd *rbd, *btmp;
|
||||
|
||||
while (!TAILQ_EMPTY(&g_rbds)) {
|
||||
rbd = TAILQ_FIRST(&g_rbds);
|
||||
TAILQ_REMOVE(&g_rbds, rbd, tailq);
|
||||
bdev_rbd_free(rbd);
|
||||
TAILQ_FOREACH_SAFE(rbd, &g_rbds, tailq, btmp) {
|
||||
spdk_bdev_unregister(&rbd->disk, NULL, NULL);
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user