Re: [tip:tools/kvm] kvm tools, qcow: Fix copy-on-write image corruption

From: Kevin Wolf
Date: Thu Jul 21 2011 - 04:06:34 EST


Am 20.07.2011 21:49, schrieb tip-bot for Pekka Enberg:
> Commit-ID: 4839bcd6b04a1b628f0f00d535ddca2ee872e9fa
> Gitweb: http://git.kernel.org/tip/4839bcd6b04a1b628f0f00d535ddca2ee872e9fa
> Author: Pekka Enberg <penberg@xxxxxxxxxx>
> AuthorDate: Wed, 20 Jul 2011 16:28:31 +0300
> Committer: Pekka Enberg <penberg@xxxxxxxxxx>
> CommitDate: Wed, 20 Jul 2011 16:28:31 +0300
>
> kvm tools, qcow: Fix copy-on-write image corruption
>
> We don't handle refcount table properly so make sure we only write to clusters
> that have the "copied" flag set.
>
> Cc: Kevin Wolf <kwolf@xxxxxxxxxx>
> Cc: Sasha Levin <levinsasha928@xxxxxxxxx>
> Signed-off-by: Pekka Enberg <penberg@xxxxxxxxxx>

Hm, I must have missed this patch on the KVM mailing list...

You should also error out before creating a new L2 table as its refcount
would have to be updated, too. On the other hand, the patch is a bit too
restrictive, because it applies the check to qcow1 which doesn't even
have a refcount table.

I'm not sure if everyone is aware of it, so another hint: Now that you
can't grow qcow2 any more, you might find it useful to use qemu-img
create -f qcow2 -o preallocation=metadata, so that all clusters are
already present and you don't get random failures.

Kevin
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/