From: Christoph Hellwig <hch@infradead.org>
To: Anthony Liguori <anthony@codemonkey.ws>
Cc: Christoph Hellwig <hch@infradead.org>,
Michael Tokarev <mjt@tls.msk.ru>, KVM list <kvm@vger.kernel.org>,
Kevin Wolf <kwolf@redhat.com>
Subject: Re: JFYI: ext4 bug triggerable by kvm
Date: Tue, 17 Aug 2010 11:02:43 -0400 [thread overview]
Message-ID: <20100817150243.GA19231@infradead.org> (raw)
In-Reply-To: <4C6AA28F.1000605@codemonkey.ws>
On Tue, Aug 17, 2010 at 09:54:07AM -0500, Anthony Liguori wrote:
> This is simply unrealistic. O_SYNC might force data to be on a
> platter when using a directly attached disk but many NAS's actually
> do writeback caching and relying on having an UPS to preserve data
> integrity. There's really no way in the general case to ensure that
> data is actually on a platter once you've involved a complex storage
> setup or you assume FUA
Yes, there is. If you have an array that has batter backup it handles
this internally. The normal case is to not set the WCE bit in the
mode page, which tells the operating system not ever send
SYNCHRONIZE_CACHE commands. I have one array that sets a WCE bit
neveless, but it also doesn't flush it's non-volatile cache in
SYNCHRONIZE_CACHE, but rather implements it as an effective no-op.
> Let me put it another way. If an admin knows the disks on a machine
> have battery backed cache, he's likely to leave writeback caching
> enabled.
>
> We are currently giving the admin two choices with QEMU, either
> ignore the fact that the disk is battery backed and do write through
> caching of the disk or do writeback caching in the host which
Again, this is not qemu's business at all. Qemu is not different from
any other application requiring data integrity. If that admin really
thinks he needs to overide the storage provided settings he can
mount the filesystem using -o nobarrier and we will not send cache
flushes. I would in general recommend against this, as an external
UPS still has lots of failure modes that this doesn't account for.
Arrays with internal non-volatile memory already do the right thing
anyway.
next prev parent reply other threads:[~2010-08-17 15:02 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-08-16 14:00 JFYI: ext4 bug triggerable by kvm Michael Tokarev
2010-08-16 14:43 ` Anthony Liguori
2010-08-16 18:42 ` Christoph Hellwig
2010-08-16 20:34 ` Anthony Liguori
2010-08-17 9:07 ` Christoph Hellwig
2010-08-17 9:23 ` Avi Kivity
2010-08-17 11:17 ` Christoph Hellwig
2010-08-17 12:56 ` Anthony Liguori
2010-08-17 13:07 ` Christoph Hellwig
2010-08-17 14:20 ` Anthony Liguori
2010-08-17 14:28 ` Christoph Hellwig
2010-08-17 14:39 ` Anthony Liguori
2010-08-17 14:45 ` Christoph Hellwig
2010-08-17 14:53 ` Avi Kivity
2010-08-17 14:54 ` Anthony Liguori
2010-08-17 15:01 ` Avi Kivity
2010-08-17 15:02 ` Christoph Hellwig [this message]
2010-08-17 14:40 ` Michael Tokarev
2010-08-17 14:44 ` Anthony Liguori
2010-08-17 14:46 ` Christoph Hellwig
2010-08-17 14:57 ` Anthony Liguori
2010-08-17 14:59 ` Avi Kivity
2010-08-17 15:04 ` Christoph Hellwig
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=20100817150243.GA19231@infradead.org \
--to=hch@infradead.org \
--cc=anthony@codemonkey.ws \
--cc=kvm@vger.kernel.org \
--cc=kwolf@redhat.com \
--cc=mjt@tls.msk.ru \
/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