Am 03.03.2017 um 14:38 hat Fam Zheng geschrieben: > bdrv_set_backing_hd failure needn't be abort. Since we already have > error parameter, use it. > > Signed-off-by: Fam Zheng <f...@redhat.com> > --- > block/commit.c | 12 ++++++++++-- > 1 file changed, 10 insertions(+), 2 deletions(-) > > diff --git a/block/commit.c b/block/commit.c > index 22a0a4d..1be19e1 100644 > --- a/block/commit.c > +++ b/block/commit.c > @@ -316,8 +316,16 @@ void commit_start(const char *job_id, BlockDriverState > *bs, > goto fail; > } > > - bdrv_set_backing_hd(commit_top_bs, top, &error_abort); > - bdrv_set_backing_hd(overlay_bs, commit_top_bs, &error_abort); > + bdrv_set_backing_hd(commit_top_bs, top, &local_err); > + if (local_err) { > + error_propagate(errp, local_err); > + goto fail; > + } > + bdrv_set_backing_hd(overlay_bs, commit_top_bs, &local_err); > + if (local_err) { > + error_propagate(errp, local_err); > + goto fail; > + }
In these error paths, bdrv_unref(commit_top_bs) seems to missing. Kevin