summaryrefslogtreecommitdiffstats
path: root/fs/btrfs/ctree.h
diff options
context:
space:
mode:
authorSage Weil2009-04-02 22:59:01 +0200
committerChris Mason2009-04-02 22:59:01 +0200
commitdccae99995089641fbac452ebc7f0cab18751ddb (patch)
treec8f3611cc62baa6fa02baff18374d8f3a61b06bf /fs/btrfs/ctree.h
parentBtrfs: notreelog mount option (diff)
downloadkernel-qcow2-linux-dccae99995089641fbac452ebc7f0cab18751ddb.tar.gz
kernel-qcow2-linux-dccae99995089641fbac452ebc7f0cab18751ddb.tar.xz
kernel-qcow2-linux-dccae99995089641fbac452ebc7f0cab18751ddb.zip
Btrfs: add flushoncommit mount option
The 'flushoncommit' mount option forces any data dirtied by a write in a prior transaction to commit as part of the current commit. This makes the committed state a fully consistent view of the file system from the application's perspective (i.e., it includes all completed file system operations). This was previously the behavior only when a snapshot is created. This is used by Ceph to ensure that completed writes make it to the platter along with the metadata operations they are bound to (by BTRFS_IOC_TRANS_{START,END}). Signed-off-by: Sage Weil <sage@newdream.net> Signed-off-by: Chris Mason <chris.mason@oracle.com>
Diffstat (limited to 'fs/btrfs/ctree.h')
-rw-r--r--fs/btrfs/ctree.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/btrfs/ctree.h b/fs/btrfs/ctree.h
index 1e99a9948637..bb6ac5b87652 100644
--- a/fs/btrfs/ctree.h
+++ b/fs/btrfs/ctree.h
@@ -1037,6 +1037,7 @@ struct btrfs_root {
#define BTRFS_MOUNT_DEGRADED (1 << 4)
#define BTRFS_MOUNT_COMPRESS (1 << 5)
#define BTRFS_MOUNT_NOTREELOG (1 << 6)
+#define BTRFS_MOUNT_FLUSHONCOMMIT (1 << 7)
#define btrfs_clear_opt(o, opt) ((o) &= ~BTRFS_MOUNT_##opt)
#define btrfs_set_opt(o, opt) ((o) |= BTRFS_MOUNT_##opt)