From: Gleb Natapov <gleb@redhat.com>
To: Kevin Wolf <kwolf@suse.de>
Cc: Marc Bevand <m.bevand@gmail.com>,
qemu-devel@nongnu.org, kvm@vger.kernel.org
Subject: [Qemu-devel] Re: qcow2 corruption observed, fixed by reverting old change
Date: Sun, 15 Feb 2009 12:57:18 +0200 [thread overview]
Message-ID: <20090215105718.GH25994@redhat.com> (raw)
In-Reply-To: <49955681.9070301@suse.de>
> > I tested kvm-81 and kvm-83 as well (can't test kvm-80 or older because of the
> > qcow2 performance regression caused by the default writethrough caching policy)
> > but it randomly triggers an even worse bug: the moment I shut down a guest by
> > typing "quit" in the monitor, it sometimes overwrite the first 4kB of the disk
> > image with mostly NUL bytes (!) which completely destroys it. I am familiar with
> > the qcow2 format and apparently this 4kB block seems to be an L2 table with most
> > entries set to zero. I have had to restore at least 6 or 7 disk images from
> > backup after occurences of that bug. My intuition tells me this may be the qcow2
> > code trying to allocate a cluster to write a new L2 table, but not noticing the
> > allocation failed (represented by a 0 offset), and writing the L2 table at that
> > 0 offset, overwriting the qcow2 header.
> >
> > Fortunately this bug is also fixed by running kvm-75 with block-qcow2.c reverted
> > to its kvm-72 version.
> >
> > Basically qcow2 in kvm-73 or newer is completely unreliable.
> >
> > -marc
>
> I think the corruption is a completely unrelated bug. I would suspect it
> was introduced in one of Gleb's patches in December. Adding him to CC.
>
I am not able to reproduce this. After more then hundred boot linux; generate
disk io; quit loops all I've got is an image with 7 leaked blocks and
couple of filesystem corruptions that were fixed by fsck.
--
Gleb.
next prev parent reply other threads:[~2009-02-15 11:00 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-02-11 7:00 [Qemu-devel] qcow2 corruption observed, fixed by reverting old change Jamie Lokier
2009-02-11 9:57 ` Kevin Wolf
2009-02-11 11:27 ` Jamie Lokier
2009-02-11 11:41 ` Jamie Lokier
2009-02-11 12:41 ` Kevin Wolf
2009-02-11 16:48 ` Jamie Lokier
2009-02-12 22:57 ` Consul
2009-02-12 23:19 ` [Qemu-devel] " Consul
2009-02-13 7:50 ` Marc Bevand
2009-02-16 12:44 ` [Qemu-devel] " Kevin Wolf
2009-02-17 0:43 ` Jamie Lokier
2009-03-06 22:37 ` Filip Navara
2009-02-12 5:45 ` Chris Wright
2009-02-12 11:08 ` Johannes Schindelin
[not found] ` <loom.20090213T060937-534@post.gmane.org>
2009-02-13 11:16 ` [Qemu-devel] " Kevin Wolf
2009-02-13 16:23 ` Jamie Lokier
2009-02-13 18:43 ` Chris Wright
2009-02-14 6:31 ` Marc Bevand
2009-02-14 22:28 ` Dor Laor
2009-02-15 2:27 ` Jamie Lokier
2009-02-15 7:56 ` Marc Bevand
2009-02-15 2:37 ` Jamie Lokier
2009-02-15 10:57 ` Gleb Natapov [this message]
2009-02-15 11:46 ` Marc Bevand
2009-02-15 11:54 ` Marc Bevand
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20090215105718.GH25994@redhat.com \
--to=gleb@redhat.com \
--cc=kvm@vger.kernel.org \
--cc=kwolf@suse.de \
--cc=m.bevand@gmail.com \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).