Message ID | 1275401486-10848-1-git-send-email-quintela@redhat.com |
---|---|
State | New |
Headers | show |
Am 01.06.2010 16:11, schrieb Juan Quintela: > Signed-off-by: Juan Quintela <quintela@redhat.com> > --- > block/qcow2-refcount.c | 16 ++++++++-------- > 1 files changed, 8 insertions(+), 8 deletions(-) > > diff --git a/block/qcow2-refcount.c b/block/qcow2-refcount.c > index 744107c..4226dce 100644 > --- a/block/qcow2-refcount.c > +++ b/block/qcow2-refcount.c > @@ -460,10 +460,10 @@ static int QEMU_WARN_UNUSED_RESULT update_refcount(BlockDriverState *bs, > table_index = cluster_index >> (s->cluster_bits - REFCOUNT_SHIFT); > if ((old_table_index >= 0) && (table_index != old_table_index)) { > > - if (write_refcount_block_entries(bs, refcount_block_offset, > - first_index, last_index) < 0) > - { > - return -EIO; > + ret = write_refcount_block_entries(bs, refcount_block_offset, > + first_index, last_index); > + if (ret < 0) { > + return ret; > } > > first_index = -1; > @@ -505,10 +505,10 @@ fail: > > /* Write last changed block to disk */ > if (refcount_block_offset != 0) { > - if (write_refcount_block_entries(bs, refcount_block_offset, > - first_index, last_index) < 0) > - { > - return ret < 0 ? ret : -EIO; > + int write_ret = write_refcount_block_entries(bs, refcount_block_offset, > + first_index, last_index); > + if (write_ret < 0){ > + return ret < 0 ? ret : write_ret; > } > } > Something similar (but more complete) is already queued: http://repo.or.cz/w/qemu/kevin.git/commitdiff/b10200c1 Thanks anyway, the idea is the right one. :-) Kevin
diff --git a/block/qcow2-refcount.c b/block/qcow2-refcount.c index 744107c..4226dce 100644 --- a/block/qcow2-refcount.c +++ b/block/qcow2-refcount.c @@ -460,10 +460,10 @@ static int QEMU_WARN_UNUSED_RESULT update_refcount(BlockDriverState *bs, table_index = cluster_index >> (s->cluster_bits - REFCOUNT_SHIFT); if ((old_table_index >= 0) && (table_index != old_table_index)) { - if (write_refcount_block_entries(bs, refcount_block_offset, - first_index, last_index) < 0) - { - return -EIO; + ret = write_refcount_block_entries(bs, refcount_block_offset, + first_index, last_index); + if (ret < 0) { + return ret; } first_index = -1; @@ -505,10 +505,10 @@ fail: /* Write last changed block to disk */ if (refcount_block_offset != 0) { - if (write_refcount_block_entries(bs, refcount_block_offset, - first_index, last_index) < 0) - { - return ret < 0 ? ret : -EIO; + int write_ret = write_refcount_block_entries(bs, refcount_block_offset, + first_index, last_index); + if (write_ret < 0){ + return ret < 0 ? ret : write_ret; } }
Signed-off-by: Juan Quintela <quintela@redhat.com> --- block/qcow2-refcount.c | 16 ++++++++-------- 1 files changed, 8 insertions(+), 8 deletions(-)