From ca1a3bf18e5de08b1119ac5c9320503306fe5331 Mon Sep 17 00:00:00 2001 From: paul luse Date: Thu, 25 Jul 2019 18:47:07 -0400 Subject: [PATCH] bdev/compress: use base bdev alias as base for comp_bdev name If available, if not use the bdev unique name. This results in a much friendlier comp_bdev naem for the user. For example, now it would look something like this: COMP_lvs0/lvs as opposed to like this COMP_0b149b31-b66b-4cf7-ab39-a55b50788cd1 Change-Id: I319a141221ed8880edcec930ca5be9f256b105e0 Signed-off-by: paul luse Reviewed-on: https://review.gerrithub.io/c/spdk/spdk/+/463246 Tested-by: SPDK CI Jenkins Reviewed-by: Ben Walker Reviewed-by: Jim Harris --- lib/bdev/compress/vbdev_compress.c | 18 ++++++++++++++---- test/unit/lib/bdev/compress.c/compress_ut.c | 2 ++ 2 files changed, 16 insertions(+), 4 deletions(-) diff --git a/lib/bdev/compress/vbdev_compress.c b/lib/bdev/compress/vbdev_compress.c index 71a6821e5..56e6c4bed 100644 --- a/lib/bdev/compress/vbdev_compress.c +++ b/lib/bdev/compress/vbdev_compress.c @@ -1359,11 +1359,21 @@ static void vbdev_compress_claim(struct vbdev_compress *comp_bdev) { int rc; + struct spdk_bdev_alias *aliases; - comp_bdev->comp_bdev.name = spdk_sprintf_alloc("COMP_%s", comp_bdev->base_bdev->name); - if (!comp_bdev->comp_bdev.name) { - SPDK_ERRLOG("could not allocate comp_bdev name\n"); - goto error_bdev_name; + if (!TAILQ_EMPTY(spdk_bdev_get_aliases(comp_bdev->base_bdev))) { + aliases = TAILQ_FIRST(spdk_bdev_get_aliases(comp_bdev->base_bdev)); + comp_bdev->comp_bdev.name = spdk_sprintf_alloc("COMP_%s", aliases->alias); + if (!comp_bdev->comp_bdev.name) { + SPDK_ERRLOG("could not allocate comp_bdev name for alias\n"); + goto error_bdev_name; + } + } else { + comp_bdev->comp_bdev.name = spdk_sprintf_alloc("COMP_%s", comp_bdev->base_bdev->name); + if (!comp_bdev->comp_bdev.name) { + SPDK_ERRLOG("could not allocate comp_bdev name for unique name\n"); + goto error_bdev_name; + } } /* Note: some of the fields below will change in the future - for example, diff --git a/test/unit/lib/bdev/compress.c/compress_ut.c b/test/unit/lib/bdev/compress.c/compress_ut.c index 5ac583a3d..5fbb92001 100644 --- a/test/unit/lib/bdev/compress.c/compress_ut.c +++ b/test/unit/lib/bdev/compress.c/compress_ut.c @@ -233,6 +233,8 @@ spdk_reduce_vol_readv(struct spdk_reduce_vol *vol, struct iovec *iov, int iovcnt #include "bdev/compress/vbdev_compress.c" /* SPDK stubs */ +DEFINE_STUB(spdk_bdev_get_aliases, const struct spdk_bdev_aliases_list *, + (const struct spdk_bdev *bdev), NULL); DEFINE_STUB_V(spdk_bdev_module_list_add, (struct spdk_bdev_module *bdev_module)); DEFINE_STUB_V(spdk_bdev_free_io, (struct spdk_bdev_io *g_bdev_io)); DEFINE_STUB(spdk_bdev_io_type_supported, bool, (struct spdk_bdev *bdev,