linux-lvm.redhat.com archive mirror
 help / color / mirror / Atom feed
From: Greg Hudson <ghudson@MIT.EDU>
To: Alasdair G Kergon <agk@redhat.com>
Cc: linux-lvm@redhat.com
Subject: Re: [linux-lvm] Page cache corruption when creating a snapshot
Date: Fri, 29 Feb 2008 14:11:05 -0500	[thread overview]
Message-ID: <1204312265.5850.7.camel@error-messages.mit.edu> (raw)
In-Reply-To: <20080229183148.GI1788@agk.fab.redhat.com>

On Fri, 2008-02-29 at 18:31 +0000, Alasdair G Kergon wrote:
> On Fri, Feb 29, 2008 at 12:32:41PM -0500, ghudson@MIT.EDU wrote:
> > The reproduction recipe looks like:
> >   rm -rf /tmp/test
> >   mkdir /tmp/test
> >   # Put around 60MB of files into /tmp/test
> >   find /tmp/test -type f | xargs md5sum > /tmp/sum.pre
> >   lvcreate --size 2G --snapshot /dev/dink/gutsy-i386-sbuild --name testsnapshot
> >   find /tmp/test -type f | xargs md5sum > /tmp/sum.post
> 
> Can you do that twice?
>     find /tmp/test -type f | xargs md5sum > /tmp/sum.post2
> and check the two post files are the same?

In three reproductions of the page cache corruption, sum.post2 was
always the same as sum.post.

In my experiences with this problem in general, the page cache
corruption is not particularly transient; once it happens, the file
continues to appear modified (with the same incorrect contents) for the
indefinite future, until the machine is rebooted.

> And add some syncs/blockdev --flushbufs at different places
> in the script to see if you can make it go away.

Nope, that never made it go away.  I'm not sure in what situations
flushing write buffers would have any effect.  If I had a way to throw
away the read-only page cache and force a file reload from disk, I would
expect that to eliminate the visible effect of the corruption; at the
moment the only reliable way I know how to do that is to reboot.  (I
could churn the page cache into oblivion with a bazillion reads of
different files, but I'd have no way of knowing when I had succeeded in
reusing the corrupted cache page.)

  reply	other threads:[~2008-02-29 19:11 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-02-29 17:32 [linux-lvm] Page cache corruption when creating a snapshot ghudson
2008-02-29 18:31 ` Alasdair G Kergon
2008-02-29 19:11   ` Greg Hudson [this message]
2008-02-29 19:10     ` Bryn M. Reeves
2008-02-29 19:35       ` Greg Hudson
2008-02-29 20:14         ` Alasdair G Kergon
2008-03-04 23:57           ` Greg Hudson
2008-02-29 19:29     ` malahal
2008-02-29 19:53 ` Stuart D. Gathman

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=1204312265.5850.7.camel@error-messages.mit.edu \
    --to=ghudson@mit.edu \
    --cc=agk@redhat.com \
    --cc=linux-lvm@redhat.com \
    /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).