Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 6d94c74a authored by Jaegeuk Kim's avatar Jaegeuk Kim
Browse files

f2fs: add lazytime mount option



This patch adds lazytime support.

Signed-off-by: default avatarJaegeuk Kim <jaegeuk@kernel.org>
parent 26de9b11
Loading
Loading
Loading
Loading
+14 −0
Original line number Diff line number Diff line
@@ -93,6 +93,8 @@ enum {
	Opt_noinline_data,
	Opt_data_flush,
	Opt_fault_injection,
	Opt_lazytime,
	Opt_nolazytime,
	Opt_err,
};

@@ -119,6 +121,8 @@ static match_table_t f2fs_tokens = {
	{Opt_noinline_data, "noinline_data"},
	{Opt_data_flush, "data_flush"},
	{Opt_fault_injection, "fault_injection=%u"},
	{Opt_lazytime, "lazytime"},
	{Opt_nolazytime, "nolazytime"},
	{Opt_err, NULL},
};

@@ -506,6 +510,12 @@ static int parse_options(struct super_block *sb, char *options)
				"FAULT_INJECTION was not selected");
#endif
			break;
		case Opt_lazytime:
			sb->s_flags |= MS_LAZYTIME;
			break;
		case Opt_nolazytime:
			sb->s_flags &= ~MS_LAZYTIME;
			break;
		default:
			f2fs_msg(sb, KERN_ERR,
				"Unrecognized mount option \"%s\" or missing value",
@@ -613,6 +623,9 @@ static void f2fs_dirty_inode(struct inode *inode, int flags)
			inode->i_ino == F2FS_META_INO(sbi))
		return;

	if (flags == I_DIRTY_TIME)
		return;

	if (is_inode_flag_set(inode, FI_AUTO_RECOVER))
		clear_inode_flag(inode, FI_AUTO_RECOVER);

@@ -932,6 +945,7 @@ static void default_options(struct f2fs_sb_info *sbi)
	set_opt(sbi, BG_GC);
	set_opt(sbi, INLINE_DATA);
	set_opt(sbi, EXTENT_CACHE);
	sbi->sb->s_flags |= MS_LAZYTIME;

#ifdef CONFIG_F2FS_FS_XATTR
	set_opt(sbi, XATTR_USER);