blob: use _spdk_blob_persist_complete for all persist error paths

Signed-off-by: Jim Harris <james.r.harris@intel.com>
Change-Id: Iaef32731b05a53ac0707524d78086eedc89d6af6

Reviewed-on: https://review.gerrithub.io/401254
Tested-by: SPDK Automated Test System <sys_sgsw@intel.com>
Reviewed-by: Maciej Szwed <maciej.szwed@intel.com>
Reviewed-by: Daniel Verkamp <daniel.verkamp@intel.com>
Reviewed-by: Changpeng Liu <changpeng.liu@intel.com>
Reviewed-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com>
This commit is contained in:
Jim Harris 2018-02-23 09:12:57 -07:00
parent cb42aa1dce
commit d5adb95226

View File

@ -1237,8 +1237,7 @@ _spdk_blob_persist(spdk_bs_sequence_t *seq, struct spdk_blob *blob,
/* Generate the new metadata */
rc = _spdk_blob_serialize(blob, &ctx->pages, &blob->active.num_pages);
if (rc < 0) {
free(ctx);
cb_fn(seq, cb_arg, rc);
_spdk_blob_persist_complete(seq, ctx, rc);
return;
}
@ -1248,8 +1247,7 @@ _spdk_blob_persist(spdk_bs_sequence_t *seq, struct spdk_blob *blob,
blob->active.pages = realloc(blob->active.pages,
blob->active.num_pages * sizeof(*blob->active.pages));
if (!blob->active.pages) {
free(ctx);
cb_fn(seq, cb_arg, -ENOMEM);
_spdk_blob_persist_complete(seq, ctx, -ENOMEM);
return;
}
@ -1261,9 +1259,7 @@ _spdk_blob_persist(spdk_bs_sequence_t *seq, struct spdk_blob *blob,
for (i = 1; i < blob->active.num_pages; i++) {
page_num = spdk_bit_array_find_first_clear(bs->used_md_pages, page_num);
if (page_num >= spdk_bit_array_capacity(bs->used_md_pages)) {
spdk_dma_free(ctx->pages);
free(ctx);
cb_fn(seq, cb_arg, -ENOMEM);
_spdk_blob_persist_complete(seq, ctx, -ENOMEM);
return;
}
page_num++;