xfs
[Top] [All Lists]

md raid1 passes barriers, but xfs doesn't use them?

To: LinuxRaid <linux-raid@xxxxxxxxxxxxxxx>, xfs-oss <xfs@xxxxxxxxxxx>
Subject: md raid1 passes barriers, but xfs doesn't use them?
From: Eric Sandeen <sandeen@xxxxxxxxxxx>
Date: Mon, 23 Jun 2008 21:23:10 -0500
Sender: xfs-bounce@xxxxxxxxxxx
User-agent: Thunderbird 2.0.0.14 (Macintosh/20080421)
So md raid1 is happy to pass down any barrier writes that it sees, but
this bit in xfs_mountfs_check_barriers() at mount time:

        if (mp->m_ddev_targp->bt_bdev->bd_disk->queue->ordered ==
                                        QUEUE_ORDERED_NONE) {
                xfs_fs_cmn_err(CE_NOTE, mp,
                  "Disabling barriers, not supported by the underlying
device");
                mp->m_flags &= ~XFS_MOUNT_BARRIER;
                return;
        }

winds up with XFS disabling barriers on these devices.  However, if this
is simply commented out, XFS happily tests barriers, finds that they
work, leaves them turned on and all subsequent barrier writes to the
device succeed.

Perhaps what we have here is a failure to communicate?  :)

I'm not sure; *should* XFS be looking for a QUEUE_ORDERED tag?  Should
MD be setting one?  Maybe there should be a QUEUE_ORDERED_PASSTHRU flag?
 Or should XFS just stick with the test write and ignore the flag?  I'm
not sure of the queue->ordered flag details, but it seems that XFS & md
raid1 both try hard to keep barriers in force, and there's a disconnect
here somewhere.

Thanks,
-Eric


<Prev in Thread] Current Thread [Next in Thread>