f2fs: fix to clean previous mount option when remount_fs
authorChao Yu <chao2.yu@samsung.com>
Mon, 15 Sep 2014 10:04:44 +0000 (18:04 +0800)
committerJaegeuk Kim <jaegeuk@kernel.org>
Tue, 23 Sep 2014 18:10:22 +0000 (11:10 -0700)
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>
fs/f2fs/super.c

index 3dfa1b5eae2f04d44791ac4d17056f6beedbc8f7..7a91a381dcedae6fde102009f5f8914331ee4e65 100644 (file)
@@ -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)