diff --git a/module/bdev/xnvme/bdev_xnvme.c b/module/bdev/xnvme/bdev_xnvme.c index 256082c99..399288aa7 100644 --- a/module/bdev/xnvme/bdev_xnvme.c +++ b/module/bdev/xnvme/bdev_xnvme.c @@ -428,7 +428,6 @@ xnvme_bdev_unregister_cb(void *arg, int bdeverrno) { struct delete_xnvme_bdev_ctx *ctx = arg; - bdev_xnvme_destruct(ctx->xnvme); ctx->cb_fn(ctx->cb_arg, bdeverrno); free(ctx); } diff --git a/module/bdev/xnvme/bdev_xnvme_rpc.c b/module/bdev/xnvme/bdev_xnvme_rpc.c index f69867895..f061a9b8d 100644 --- a/module/bdev/xnvme/bdev_xnvme_rpc.c +++ b/module/bdev/xnvme/bdev_xnvme_rpc.c @@ -120,6 +120,7 @@ rpc_bdev_xnvme_delete(struct spdk_jsonrpc_request *request, bdev = spdk_bdev_desc_get_bdev(desc); spdk_bdev_close(desc); } else { + spdk_jsonrpc_send_error_response(request, -ENODEV, spdk_strerror(ENODEV)); goto cleanup; }