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?

>  ======================== 
> ============================================================
>  
>  Debugfs Entries
> diff --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

Reply via email to