On 08/17/2010 04:07 AM, Christoph Hellwig wrote:
On Mon, Aug 16, 2010 at 03:34:12PM -0500, Anthony Liguori wrote:
On 08/16/2010 01:42 PM, Christoph Hellwig wrote:
On Mon, Aug 16, 2010 at 09:43:09AM -0500, Anthony Liguori wrote:
Also, ext4 is _very_ slow on O_SYNC writes (which is
used in kvm with default cache).
Yeah, we probably need to switch to sync_file_range() to avoid the
journal commit on every write.
No, we don't. sync_file_range does not actually provide any data
integrity.
What do you mean by data integrity?
sync_file_range only does pagecache-level writeout of the file data.
It nevers calls into the actual filesystem, that means any block
allocations (for filling holes / converting preallocated space in normal
filesystems, or every write in COW-based filesstems like qcow2) never
get flushes to disk,
But assuming that you had a preallocated disk image, it would
effectively flush the page cache so it sounds like the only real issue
is sparse and growable files.
and even more importantly the disk write cache is
never flushed.
The point is that we don't want to flush the disk write cache. The
intention of writethrough is not to make the disk cache writethrough but
to treat the host's cache as writethrough.
Regards,
Anthony Liguori
In short it's completely worthless for any real filesystem.
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html