[DRBD-user] Xen DomU on DRBD device: barrier errors

Wiebe Cazemier wiebe at halfgaar.net
Thu May 31 13:38:37 CEST 2012

Note: "permalinks" may not be as permanent as we would like,
direct links of old sources may well be a few messages off.


----- Original Message -----
> From: "Lars Ellenberg" <lars.ellenberg at linbit.com>
> To: drbd-user at lists.linbit.com
> Sent: Thursday, 31 May, 2012 12:44:16 PM
> Subject: Re: [DRBD-user] Xen DomU on DRBD device: barrier errors

> 
> I see.  Then that workaround does not work (anymore?).
> Still, the problem is not in DRBD, but in the xen block driver.
> 
> Just add "-DRBD" to your googling,
> should make it easier to find and not be distracted...

For the record, it seems to be caused by Linux 3.1's new default ext3 behavior to enable barriers ([1] and [2]):

================
Hard disks have a memory buffer were they temporally store the instructions and data issued from the OS while the disk processes it. The internal software of modern disks changes the order of the instructions to improve performance, which means that instructions may or may not be committed to the disk in the same order the OS issued them. This breaks many of the assumptions that file systems need to reliably implement things like journaling or COW, so disks provide a "cache flush" instruction that the OS uses when it needs it. In the Linux world, when a file system issues that instruction, it is called a "barrier". File systems such as XFS, Btrfs and ext4 already use and enable barriers by default; ext3 supports them but until this release it did not enable them by default: while the data safety guarantees are higher, their performance impact in Ext3 is noticeable in many common workloads, and it considered that it was an unacceptable performance regression to enable them by default. However, Linux distributions like Red Hat have enabled barriers by default in Ext3 for a long time, and now the default for mainline has been changed as well.

In other words: if you use Ext3 and you note performance regressions with this release, try disabling barriers ("barrier=0" mount option). 
================

If barriers weren't enabled before, I guess it doesn't hurt to disable them now.

I'll see about (status of) bug reports for xen/Ubuntu.


[1] http://lists.xen.org/archives/html/xen-devel/2011-10/msg02028.html
[2] http://kernelnewbies.org/Linux_3.1#head-7536ebf800edb3e888431812b283b63ed2b2b7ea



More information about the drbd-user mailing list