summaryrefslogtreecommitdiffstats
path: root/fs/btrfs/super.c
diff options
context:
space:
mode:
authorChris Mason2015-07-02 22:57:22 +0200
committerChris Mason2015-08-09 16:35:06 +0200
commitda2f0f74cf7d074e5a8918c8efdf6aba4a989b4a (patch)
tree3a2cf977b893863ce5938132a802804a56291f05 /fs/btrfs/super.c
parentBtrfs: remove unused mutex from struct 'btrfs_fs_info' (diff)
downloadkernel-qcow2-linux-da2f0f74cf7d074e5a8918c8efdf6aba4a989b4a.tar.gz
kernel-qcow2-linux-da2f0f74cf7d074e5a8918c8efdf6aba4a989b4a.tar.xz
kernel-qcow2-linux-da2f0f74cf7d074e5a8918c8efdf6aba4a989b4a.zip
Btrfs: add support for blkio controllers
This attaches accounting information to bios as we submit them so the new blkio controllers can throttle on btrfs filesystems. Not much is required, we're just associating bios with blkcgs during clone, calling wbc_init_bio()/wbc_account_io() during writepages submission, and attaching the bios to the current context during direct IO. Finally if we are splitting bios during btrfs_map_bio, this attaches accounting information to the split. The end result is able to throttle nicely on single disk filesystems. A little more work is required for multi-device filesystems. Signed-off-by: Chris Mason <clm@fb.com>
Diffstat (limited to 'fs/btrfs/super.c')
-rw-r--r--fs/btrfs/super.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/btrfs/super.c b/fs/btrfs/super.c
index cd7ef34d2dce..d366dd4664d0 100644
--- a/fs/btrfs/super.c
+++ b/fs/btrfs/super.c
@@ -1033,6 +1033,7 @@ static int btrfs_fill_super(struct super_block *sb,
sb->s_flags |= MS_POSIXACL;
#endif
sb->s_flags |= MS_I_VERSION;
+ sb->s_iflags |= SB_I_CGROUPWB;
err = open_ctree(sb, fs_devices, (char *)data);
if (err) {
printk(KERN_ERR "BTRFS: open_ctree failed\n");