From 7bffdb2db9eec58c3880b051412e9fa48b362245 Mon Sep 17 00:00:00 2001 From: paul luse Date: Thu, 25 Apr 2019 18:41:02 -0400 Subject: [PATCH] bdev/compress: fix size of compressed bdev Needs to be based on the compressed vol size which is smaller than the backing io device. Fixes issue 763 Change-Id: I917c98e86a0755e503d5ba3d4b6c02e42f9ed709 Signed-off-by: paul luse Reviewed-on: https://review.gerrithub.io/c/spdk/spdk/+/452158 Tested-by: SPDK CI Jenkins Reviewed-by: Jim Harris Reviewed-by: Ben Walker --- lib/bdev/compress/vbdev_compress.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/bdev/compress/vbdev_compress.c b/lib/bdev/compress/vbdev_compress.c index 01e9d27af..4ce2a7018 100644 --- a/lib/bdev/compress/vbdev_compress.c +++ b/lib/bdev/compress/vbdev_compress.c @@ -1215,7 +1215,7 @@ vbdev_compress_claim(struct vbdev_compress *comp_bdev) comp_bdev->comp_bdev.split_on_optimal_io_boundary = true; comp_bdev->comp_bdev.blocklen = comp_bdev->base_bdev->blocklen; - comp_bdev->comp_bdev.blockcnt = comp_bdev->base_bdev->blockcnt; + comp_bdev->comp_bdev.blockcnt = comp_bdev->params.vol_size / comp_bdev->comp_bdev.blocklen; /* This is the context that is passed to us when the bdev * layer calls in so we'll save our comp_bdev node here.