summaryrefslogtreecommitdiffstats
path: root/fs/btrfs/super.c
diff options
context:
space:
mode:
authorIlya Dryomov <idryomov@gmail.com>2012-06-22 20:24:13 +0200
committerChris Mason <chris.mason@fusionio.com>2012-07-02 21:39:17 +0200
commit2b6ba629b5aac51e7099efbb43e2b403213aa7fb (patch)
tree0a36f4adb14a57fdf4ee1dafa957927b6a6f9203 /fs/btrfs/super.c
parentBtrfs: restore restriper state on all mounts (diff)
downloadlinux-2b6ba629b5aac51e7099efbb43e2b403213aa7fb.tar.xz
linux-2b6ba629b5aac51e7099efbb43e2b403213aa7fb.zip
Btrfs: resume balance on rw (re)mounts properly
This introduces btrfs_resume_balance_async(), which, given that restriper state was recovered earlier by btrfs_recover_balance(), resumes balance in btrfs-balance kthread. Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
Diffstat (limited to 'fs/btrfs/super.c')
-rw-r--r--fs/btrfs/super.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/fs/btrfs/super.c b/fs/btrfs/super.c
index 0eb9a4da069e..e23991574fdf 100644
--- a/fs/btrfs/super.c
+++ b/fs/btrfs/super.c
@@ -1187,6 +1187,10 @@ static int btrfs_remount(struct super_block *sb, int *flags, char *data)
if (ret)
goto restore;
+ ret = btrfs_resume_balance_async(fs_info);
+ if (ret)
+ goto restore;
+
sb->s_flags &= ~MS_RDONLY;
}