Hi Gu, > -----Original Message----- > From: Gu Zheng [mailto:[email protected]] > Sent: Tuesday, September 16, 2014 9:51 AM > To: Chao Yu > Cc: Jaegeuk Kim; Changman Lee; [email protected]; > [email protected] > Subject: Re: [f2fs-dev][PATCH 4/5] f2fs: fix to clean previous mount option > when remount_fs > > Hi Yu, > On 09/15/2014 06:04 PM, Chao Yu wrote: > > > 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. > > Please don't. > "Remount" should just change what you specified and keep others unchanged.
Actually, there are two kinds of different 'remount', they are all specified in manual of mount. 1) mount -o remount,rw /dev/foo /dir 2) mount -o remount,rw /dir I think 'remount' in your description is the second kind, being different from the first kind in description of this patch, for the second kind remount, 'mount' command can keep old options by loading them from mtab/fstab then merge them with new specified options. Thanks, Yu > The problem here is that we need to provide mount opts for disable/enable > some features, but we missed it. So the right way is adding these opts if > we really need them. > > Thanks, > Gu > > > > > Signed-off-by: Chao Yu <[email protected]> > > --- > > fs/f2fs/super.c | 3 +++ > > 1 file changed, 3 insertions(+) > > > > diff --git a/fs/f2fs/super.c b/fs/f2fs/super.c > > index 54444bb..90fcbe0 100644 > > --- a/fs/f2fs/super.c > > +++ b/fs/f2fs/super.c > > @@ -616,6 +616,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) -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/

