From e87d3400a53aaab3fef0af2d5b04c1b90952f767 Mon Sep 17 00:00:00 2001 From: Tomasz Zawadzki Date: Wed, 31 Jan 2018 11:55:54 -0500 Subject: [PATCH] lvol: display thin_provision property during get_bdevs Change-Id: Ib3507a9e69b210cbd173c88d166025d4579e0149 Signed-off-by: Tomasz Zawadzki Reviewed-on: https://review.gerrithub.io/397602 Tested-by: SPDK Automated Test System Reviewed-by: Daniel Verkamp Reviewed-by: Jim Harris --- include/spdk_internal/lvolstore.h | 1 + lib/bdev/lvol/vbdev_lvol.c | 3 +++ lib/lvol/lvol.c | 1 + test/unit/lib/bdev/vbdev_lvol.c/vbdev_lvol_ut.c | 6 ++++++ 4 files changed, 11 insertions(+) diff --git a/include/spdk_internal/lvolstore.h b/include/spdk_internal/lvolstore.h index bcbd2e3c5..64cfd6d45 100644 --- a/include/spdk_internal/lvolstore.h +++ b/include/spdk_internal/lvolstore.h @@ -102,6 +102,7 @@ struct spdk_lvol { char *unique_id; char name[SPDK_LVOL_NAME_MAX]; bool close_only; + bool thin_provision; struct spdk_bdev *bdev; int ref_count; bool action_in_progress; diff --git a/lib/bdev/lvol/vbdev_lvol.c b/lib/bdev/lvol/vbdev_lvol.c index eb6cf3ac9..0ab9ca146 100644 --- a/lib/bdev/lvol/vbdev_lvol.c +++ b/lib/bdev/lvol/vbdev_lvol.c @@ -480,6 +480,9 @@ vbdev_lvol_dump_config_json(void *ctx, struct spdk_json_write_ctx *w) spdk_json_write_name(w, "base_bdev"); spdk_json_write_string(w, spdk_bdev_get_name(bdev)); + spdk_json_write_name(w, "thin_provision"); + spdk_json_write_bool(w, lvol->thin_provision); + spdk_json_write_object_end(w); return 0; diff --git a/lib/lvol/lvol.c b/lib/lvol/lvol.c index aa9b34a63..e04ee3b9d 100644 --- a/lib/lvol/lvol.c +++ b/lib/lvol/lvol.c @@ -964,6 +964,7 @@ spdk_lvol_create(struct spdk_lvol_store *lvs, const char *name, uint64_t sz, num_clusters = divide_round_up(sz, spdk_bs_get_cluster_size(bs)); lvol->num_clusters = num_clusters; lvol->close_only = false; + lvol->thin_provision = thin_provision; strncpy(lvol->name, name, SPDK_LVS_NAME_MAX); req->lvol = lvol; diff --git a/test/unit/lib/bdev/vbdev_lvol.c/vbdev_lvol_ut.c b/test/unit/lib/bdev/vbdev_lvol.c/vbdev_lvol_ut.c index 31c1ba646..4f89b3e6d 100644 --- a/test/unit/lib/bdev/vbdev_lvol.c/vbdev_lvol_ut.c +++ b/test/unit/lib/bdev/vbdev_lvol.c/vbdev_lvol_ut.c @@ -410,6 +410,12 @@ spdk_json_write_string(struct spdk_json_write_ctx *w, const char *val) return 0; } +int +spdk_json_write_bool(struct spdk_json_write_ctx *w, bool val) +{ + return 0; +} + int spdk_json_write_object_begin(struct spdk_json_write_ctx *w) {