On 14.10.2013 23:52, Wenchao Xia wrote: > Signed-off-by: Wenchao Xia <[email protected]> > --- > block/qcow2-snapshot.c | 7 +++++++ > 1 files changed, 7 insertions(+), 0 deletions(-) > > diff --git a/block/qcow2-snapshot.c b/block/qcow2-snapshot.c > index 4bd494b..c933b7f 100644 > --- a/block/qcow2-snapshot.c > +++ b/block/qcow2-snapshot.c > @@ -304,6 +304,13 @@ static int qcow2_write_snapshots(BlockDriverState *bs, > Error **errp) > PRIi64 " with size %" PRIu64 ":%d (%s)", > offsetof(QCowHeader, nb_snapshots), sizeof(header_data), > ret, strerror(-ret)); > + /* > + * If the snapshot data part have been updated on disk, Then the
s/have/has/; s/Then/then/ > + * clusters at snapshot_offset may be used in next snapshot > operation. > + * If we free those clusters in fail path, they may be allocated and > + * made dirty causing damage, so skip cluster free for safe. s/for/to be/ > + */ > + snapshots_offset = 0; > goto fail; > } Other then that: Reviewed-by: Max Reitz <[email protected]>
