On 2023/4/4 1:40, Jaegeuk Kim wrote:
On 03/31, Yangtao Li wrote:This patch support noage_extent_cache mount option.Signed-off-by: Yangtao Li <frank...@vivo.com> --- Documentation/filesystems/f2fs.rst | 2 ++ fs/f2fs/super.c | 7 +++++++ 2 files changed, 9 insertions(+) diff --git a/Documentation/filesystems/f2fs.rst b/Documentation/filesystems/f2fs.rst index a81c896464ff..75505ab88de8 100644 --- a/Documentation/filesystems/f2fs.rst +++ b/Documentation/filesystems/f2fs.rst @@ -352,6 +352,8 @@ age_extent_cache Enable an age extent cache based on rb-tree. It records data block update frequency of the extent per inode, in order to provide better temperature hints for data block allocation. +noage_extent_cache Disable an age extent cache based on rb-tree, see + the above age_extent_cache mount option.Hmm, why do we need?
Hi Yangtao, Please check the reason why we need to add no{inline_data, extent_cache, ...} mount option as below: commit 75342797988a0f9ebec400a2dde8d4de581c4079 Author: Wanpeng Li <wanpeng...@linux.intel.com> Date: Tue Mar 24 10:20:27 2015 +0800 f2fs: enable inline data by default Enable inline_data feature by default since it brings us better performance and space utilization and now has already stable. Add another option noinline_data to disable it during mount. Thanks,
======================== ============================================================Debugfs Entriesdiff --git a/fs/f2fs/super.c b/fs/f2fs/super.c index b5828a67f7c1..8bd9953ea7e3 100644 --- a/fs/f2fs/super.c +++ b/fs/f2fs/super.c @@ -165,6 +165,7 @@ enum { Opt_discard_unit, Opt_memory_mode, Opt_age_extent_cache, + Opt_noage_extent_cache, Opt_err, };@@ -244,6 +245,7 @@ static match_table_t f2fs_tokens = {{Opt_discard_unit, "discard_unit=%s"}, {Opt_memory_mode, "memory=%s"}, {Opt_age_extent_cache, "age_extent_cache"}, + {Opt_noage_extent_cache, "noage_extent_cache"}, {Opt_err, NULL}, };@@ -1269,6 +1271,9 @@ static int parse_options(struct super_block *sb, char *options, bool is_remount)case Opt_age_extent_cache: set_opt(sbi, AGE_EXTENT_CACHE); break; + case Opt_noage_extent_cache: + clear_opt(sbi, AGE_EXTENT_CACHE); + break; default: f2fs_err(sbi, "Unrecognized mount option \"%s\" or missing value", p); @@ -1974,6 +1979,8 @@ static int f2fs_show_options(struct seq_file *seq, struct dentry *root) seq_puts(seq, ",noextent_cache"); if (test_opt(sbi, AGE_EXTENT_CACHE)) seq_puts(seq, ",age_extent_cache"); + else + seq_puts(seq, ",noage_extent_cache"); if (test_opt(sbi, DATA_FLUSH)) seq_puts(seq, ",data_flush");--2.35.1
_______________________________________________ Linux-f2fs-devel mailing list Linux-f2fs-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel