Spdk/lib/blob
Sochin Jiang 3790a412b8 lib/blob: try best to merge the contiguous clusters
blob_persist_clear_clusters() issues 'unmap' or 'write_zeroes'
IOs in one batch, this can consumes lots of 'bdev_io's.
we need to try best to merge the contiguous clusters
especially in the following case:

cluster 0: LBA 128 (count = 128)
cluster 1: LBA 0 (meaning thin provisioned, no cluster allocated)
cluster 2: LBA 256 (count = 128)

Besides, in the long run, we may need to do this batch by sequence.

Signed-off-by: Sochin Jiang <jiangxiaoqing.sochin@bytedance.com>
Change-Id: I436c8b46a1ee33ec127d0f43fd85b2c443689b59
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/4082
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Community-CI: Mellanox Build Bot
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Reviewed-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com>
2020-12-28 13:39:56 +00:00
..
blob_bs_dev.c lib/blob: remove _spdk prefix from all functions. 2020-05-27 07:35:02 +00:00
blobstore.c lib/blob: try best to merge the contiguous clusters 2020-12-28 13:39:56 +00:00
blobstore.h blob: switch to bit_pool for tracking used_clusters 2020-09-15 07:12:44 +00:00
Makefile mk/lib: add a check that major and minor version is set for libs. 2020-05-21 09:19:00 +00:00
request.c log: remove internal log.h header 2020-10-15 08:23:39 +00:00
request.h lib/blob: remove spdk_ prefix from bs_batch_read_bs_dev 2020-06-01 09:21:14 +00:00
spdk_blob.map lib/blob: add a map file. 2020-04-15 22:10:08 +00:00
zeroes.c lib/blob: remove spdk_ from non-public APIs 2020-04-15 22:10:08 +00:00