News for hackers. Stuff that matters.
Re:Why Virtual Machines suck when you run them from BTRFS fi... by aliguori on Thursday July 14, 2011 @01:59PM (#2764164)
This rambles a bit. Here's the summary:

btrfs is currently optimized for normal applications that do open("foo", O_RDWR). With this mode, integrity semantics are quite loose in POSIX.

Because VMs emulate physical hardware with strong integrity semantics, they usually do either open("foo", O_DIRECT) or open("foo", O_SYNC).

btrfs sucks for O_SYNC. It's not just VMs, databases also tend to make heavy use of O_SYNC.

Re:Why Virtual Machines suck when you run them from BTRFS fi... by gaius on Thursday July 14, 2011 @03:00PM (#2764474)
Ironic that BTRFS is sponsored by Oracle then!
Re:Why Virtual Machines suck when you run them from BTRFS fi... by aliguori on Thursday July 14, 2011 @06:50PM (#2765513)
A lot of filesystems don't optimize O_SYNC heavily until it becomes necessary. ext4 has really bad O_SYNC performance until pretty recently FWIW.

Given where BTRFS is right now development wise, it's not at all surprising O_SYNC hasn't been optimized yet.