When loading a blob and parsing its metadata, the array of pages was not updated. Serialization was unaffected, since the current pages array is unused there. Behavior was working correctly for first page, but did not for any blob with more than one page. Unfortunetly blob_persist_zero_pages() never zeroed out the pages, neither blob_persist_zero_pages_cpl() released the md pages. Resulting in md pages being claimed even after blobs deletion. This patch now fills out the active pages array with the appropriate page numbers from metadata. Signed-off-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com> Change-Id: I6ff1f4fe95684119d283c2471fdbbea464da8151 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/4504 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Community-CI: Mellanox Build Bot Reviewed-by: Ben Walker <benjamin.walker@intel.com> Reviewed-by: Jim Harris <james.r.harris@intel.com> Reviewed-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com> |
||
---|---|---|
.. | ||
blob_bs_dev.c | ||
blobstore.c | ||
blobstore.h | ||
Makefile | ||
request.c | ||
request.h | ||
spdk_blob.map | ||
zeroes.c |