Added new descriptor SPDK_MD_DESCRIPTOR_TYPE_EXTENT_TABLE. Extent Table will hold md page offsets for new Extent Page descriptor. Entries in Extent Table are run-length encoded 0's as unallocated Extent Page descriptors. Additionally total number of clusters is persisted in each Extent Table descriptor. This is because there is no guarantee that last Extent Page of a blob will be allocated. Even if number of Extents per Extent Page is always the same, Extent Page can hold less Extents than that. This patch does not add more metadata on disk right now. Only added descriptor parsing/serialization and applicable fields to store it in run time. Following patches are going to implement TODO's added in this patch. Signed-off-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com> Change-Id: Iac5d8f00ddfc655c507bc26d69d7adf8495074e9 Reviewed-on: https://review.gerrithub.io/c/spdk/spdk/+/466920 Reviewed-by: Jim Harris <james.r.harris@intel.com> Reviewed-by: Paul Luse <paul.e.luse@intel.com> Reviewed-by: Ben Walker <benjamin.walker@intel.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> |
||
---|---|---|
.. | ||
blob_bs_dev.c | ||
blobstore.c | ||
blobstore.h | ||
Makefile | ||
request.c | ||
request.h | ||
zeroes.c |