lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date:   Tue, 4 Apr 2023 09:44:37 +0800
From:   Chao Yu <chao@...nel.org>
To:     Yangtao Li <frank.li@...o.com>, Jaegeuk Kim <jaegeuk@...nel.org>
Cc:     linux-f2fs-devel@...ts.sourceforge.net,
        linux-kernel@...r.kernel.org
Subject: Re: [PATCH] f2fs: support to show noage_extent_cache mount option

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.li@...o.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.li@...ux.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 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

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ