Spdk/lib/blob
Tomasz Zawadzki b5380c370d lib/blob: replay the clusters from Extent Pages
When replaying md chain for a blob, extent table
descriptor can be read. When it is present, all allocated pages
it points to are now being put into extent_pages array in ctx.
If multiple extent table descriptors are in single md chain,
the array is expanded accordingly.

After replaying single md chain is done, replay extent pages
starting from last one. Replaying extent pages, is similar to
extent_rle in that each allocated cluster is claimed and
number of free clusters in blobstore decreased.

When all extent pages are read, return to
_spdk_bs_load_replay_md_cpl() for continuing replaying
next valid md chain.

Signed-off-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
Change-Id: I4573226aff7d7b1bcdfd188518235c8d4b68a4c3
Reviewed-on: https://review.gerrithub.io/c/spdk/spdk/+/481621
Reviewed-by: Ben Walker <benjamin.walker@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
2020-01-27 18:06:43 +00:00
..
blob_bs_dev.c blobstore: allow I/O operations to use io unit size smaller than page size. 2018-10-04 21:35:24 +00:00
blobstore.c lib/blob: replay the clusters from Extent Pages 2020-01-27 18:06:43 +00:00
blobstore.h lib/blob: use use_extent_table instead of NULL from extent_page 2020-01-27 18:06:43 +00:00
Makefile lib/blob: move bdev subdir under module directory. 2019-08-22 16:29:49 +00:00
request.c blob: fix scanbuild failures in this file. 2019-05-16 20:53:21 +00:00
request.h blob: remove unused internal functions 2018-08-30 03:41:01 +00:00
zeroes.c blob: return error for write_zeroes and unmap requests 2019-06-07 18:37:53 +00:00