From d5a0220ed1bbab9de43f631074819bf970b8b13b Mon Sep 17 00:00:00 2001 From: Shuhei Matsumoto Date: Thu, 26 Mar 2020 17:15:20 +0900 Subject: [PATCH] bdev/compress: Cleanup vbdev_reduce_load_cb() by code reordering Reorder vbdev_redoce_load_cb() so that normal case comes first, orphaned case comes second, and other error cases come at last. This will simplify the code and improve readability a little. Signed-off-by: Shuhei Matsumoto Change-Id: Ieb79364f0b3996600e8ff7ec340101877527cac2 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/1477 Tested-by: SPDK CI Jenkins Reviewed-by: Darek Stojaczyk Reviewed-by: Ben Walker --- module/bdev/compress/vbdev_compress.c | 38 +++++++++++---------------- 1 file changed, 16 insertions(+), 22 deletions(-) diff --git a/module/bdev/compress/vbdev_compress.c b/module/bdev/compress/vbdev_compress.c index 7f6499037..fdca14f9b 100644 --- a/module/bdev/compress/vbdev_compress.c +++ b/module/bdev/compress/vbdev_compress.c @@ -1754,19 +1754,18 @@ vbdev_reduce_load_cb(void *cb_arg, struct spdk_reduce_vol *vol, int reduce_errno } meta_ctx->base_desc = NULL; - if (reduce_errno != 0 && reduce_errno != -ENOENT) { - /* This error means it is not a compress disk. */ - if (reduce_errno != -EILSEQ) { - SPDK_ERRLOG("for vol %s, error %u\n", - spdk_bdev_get_name(meta_ctx->base_bdev), reduce_errno); + if (reduce_errno == 0) { + if (_set_pmd(meta_ctx) == false) { + SPDK_ERRLOG("could not find required pmd\n"); + goto err; } - goto err; - } - /* this status means that the vol could not be loaded because - * the pmem file can't be found. - */ - if (reduce_errno == -ENOENT) { + /* Update information following volume load. */ + meta_ctx->vol = vol; + memcpy(&meta_ctx->params, spdk_reduce_vol_get_params(vol), + sizeof(struct spdk_reduce_vol_params)); + vbdev_compress_claim(meta_ctx); + } else if (reduce_errno == -ENOENT) { if (_set_compbdev_name(meta_ctx)) { goto err; } @@ -1798,22 +1797,17 @@ vbdev_reduce_load_cb(void *cb_arg, struct spdk_reduce_vol *vol, int reduce_errno meta_ctx->orphaned = true; TAILQ_INSERT_TAIL(&g_vbdev_comp, meta_ctx, link); - spdk_bdev_module_examine_done(&compress_if); - return; - } - - if (_set_pmd(meta_ctx) == false) { - SPDK_ERRLOG("could not find required pmd\n"); + } else { + if (reduce_errno != -EILSEQ) { + SPDK_ERRLOG("for vol %s, error %u\n", + spdk_bdev_get_name(meta_ctx->base_bdev), reduce_errno); + } goto err; } - /* Update information following volume load. */ - meta_ctx->vol = vol; - memcpy(&meta_ctx->params, spdk_reduce_vol_get_params(vol), - sizeof(struct spdk_reduce_vol_params)); - vbdev_compress_claim(meta_ctx); spdk_bdev_module_examine_done(&compress_if); return; + err: free(meta_ctx); spdk_bdev_module_examine_done(&compress_if);