summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChao Yu <chao2.yu@samsung.com>2014-09-15 18:04:44 +0800
committerJaegeuk Kim <jaegeuk@kernel.org>2014-09-23 11:10:22 -0700
commit26666c8a4366debae30ae37d0688b2bec92d196a (patch)
tree0e1c698d7f234b49c737ac537aecec9fae0c4d3a
parent14cecc5cd6ed33ef3cb7328de904cc636dd390a4 (diff)
downloadlinux-stable-26666c8a4366debae30ae37d0688b2bec92d196a.tar.gz
linux-stable-26666c8a4366debae30ae37d0688b2bec92d196a.tar.bz2
linux-stable-26666c8a4366debae30ae37d0688b2bec92d196a.zip
f2fs: fix to clean previous mount option when remount_fs
In manual of mount, we descript remount as below: "mount -o remount,rw /dev/foo /dir After this call all old mount options are replaced and arbitrary stuff from fstab is ignored, except the loop= option which is internally generated and maintained by the mount command." Previously f2fs do not clear up old mount options when remount_fs, so we have no chance of disabling previous option (e.g. flush_merge). Fix it. Signed-off-by: Chao Yu <chao2.yu@samsung.com> Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
-rw-r--r--fs/f2fs/super.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/fs/f2fs/super.c b/fs/f2fs/super.c
index 3dfa1b5eae2f..7a91a381dced 100644
--- a/fs/f2fs/super.c
+++ b/fs/f2fs/super.c
@@ -618,6 +618,9 @@ static int f2fs_remount(struct super_block *sb, int *flags, char *data)
org_mount_opt = sbi->mount_opt;
active_logs = sbi->active_logs;
+ sbi->mount_opt.opt = 0;
+ sbi->active_logs = NR_CURSEG_TYPE;
+
/* parse mount options */
err = parse_options(sb, data);
if (err)