162306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/gc_max_sleep_time 262306a36Sopenharmony_ciDate: July 2013 362306a36Sopenharmony_ciContact: "Namjae Jeon" <namjae.jeon@samsung.com> 462306a36Sopenharmony_ciDescription: Controls the maximum sleep time for gc_thread. Time 562306a36Sopenharmony_ci is in milliseconds. 662306a36Sopenharmony_ci 762306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/gc_min_sleep_time 862306a36Sopenharmony_ciDate: July 2013 962306a36Sopenharmony_ciContact: "Namjae Jeon" <namjae.jeon@samsung.com> 1062306a36Sopenharmony_ciDescription: Controls the minimum sleep time for gc_thread. Time 1162306a36Sopenharmony_ci is in milliseconds. 1262306a36Sopenharmony_ci 1362306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/gc_no_gc_sleep_time 1462306a36Sopenharmony_ciDate: July 2013 1562306a36Sopenharmony_ciContact: "Namjae Jeon" <namjae.jeon@samsung.com> 1662306a36Sopenharmony_ciDescription: Controls the default sleep time for gc_thread. Time 1762306a36Sopenharmony_ci is in milliseconds. 1862306a36Sopenharmony_ci 1962306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/gc_idle 2062306a36Sopenharmony_ciDate: July 2013 2162306a36Sopenharmony_ciContact: "Namjae Jeon" <namjae.jeon@samsung.com> 2262306a36Sopenharmony_ciDescription: Controls the victim selection policy for garbage collection. 2362306a36Sopenharmony_ci Setting gc_idle = 0(default) will disable this option. Setting: 2462306a36Sopenharmony_ci 2562306a36Sopenharmony_ci =========== =============================================== 2662306a36Sopenharmony_ci gc_idle = 1 will select the Cost Benefit approach & setting 2762306a36Sopenharmony_ci gc_idle = 2 will select the greedy approach & setting 2862306a36Sopenharmony_ci gc_idle = 3 will select the age-threshold based approach. 2962306a36Sopenharmony_ci =========== =============================================== 3062306a36Sopenharmony_ci 3162306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/reclaim_segments 3262306a36Sopenharmony_ciDate: October 2013 3362306a36Sopenharmony_ciContact: "Jaegeuk Kim" <jaegeuk.kim@samsung.com> 3462306a36Sopenharmony_ciDescription: This parameter controls the number of prefree segments to be 3562306a36Sopenharmony_ci reclaimed. If the number of prefree segments is larger than 3662306a36Sopenharmony_ci the number of segments in the proportion to the percentage 3762306a36Sopenharmony_ci over total volume size, f2fs tries to conduct checkpoint to 3862306a36Sopenharmony_ci reclaim the prefree segments to free segments. 3962306a36Sopenharmony_ci By default, 5% over total # of segments. 4062306a36Sopenharmony_ci 4162306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/main_blkaddr 4262306a36Sopenharmony_ciDate: November 2019 4362306a36Sopenharmony_ciContact: "Ramon Pantin" <pantin@google.com> 4462306a36Sopenharmony_ciDescription: Shows first block address of MAIN area. 4562306a36Sopenharmony_ci 4662306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/ipu_policy 4762306a36Sopenharmony_ciDate: November 2013 4862306a36Sopenharmony_ciContact: "Jaegeuk Kim" <jaegeuk.kim@samsung.com> 4962306a36Sopenharmony_ciDescription: Controls the in-place-update policy. 5062306a36Sopenharmony_ci updates in f2fs. User can set: 5162306a36Sopenharmony_ci 5262306a36Sopenharmony_ci ===== =============== =================================================== 5362306a36Sopenharmony_ci value policy description 5462306a36Sopenharmony_ci 0x00 DISABLE disable IPU(=default option in LFS mode) 5562306a36Sopenharmony_ci 0x01 FORCE all the time 5662306a36Sopenharmony_ci 0x02 SSR if SSR mode is activated 5762306a36Sopenharmony_ci 0x04 UTIL if FS utilization is over threshold 5862306a36Sopenharmony_ci 0x08 SSR_UTIL if SSR mode is activated and FS utilization is over 5962306a36Sopenharmony_ci threshold 6062306a36Sopenharmony_ci 0x10 FSYNC activated in fsync path only for high performance 6162306a36Sopenharmony_ci flash storages. IPU will be triggered only if the 6262306a36Sopenharmony_ci # of dirty pages over min_fsync_blocks. 6362306a36Sopenharmony_ci (=default option) 6462306a36Sopenharmony_ci 0x20 ASYNC do IPU given by asynchronous write requests 6562306a36Sopenharmony_ci 0x40 NOCACHE disable IPU bio cache 6662306a36Sopenharmony_ci 0x80 HONOR_OPU_WRITE use OPU write prior to IPU write if inode has 6762306a36Sopenharmony_ci FI_OPU_WRITE flag 6862306a36Sopenharmony_ci ===== =============== =================================================== 6962306a36Sopenharmony_ci 7062306a36Sopenharmony_ci Refer segment.h for details. 7162306a36Sopenharmony_ci 7262306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/min_ipu_util 7362306a36Sopenharmony_ciDate: November 2013 7462306a36Sopenharmony_ciContact: "Jaegeuk Kim" <jaegeuk.kim@samsung.com> 7562306a36Sopenharmony_ciDescription: Controls the FS utilization condition for the in-place-update 7662306a36Sopenharmony_ci policies. It is used by F2FS_IPU_UTIL and F2FS_IPU_SSR_UTIL policies. 7762306a36Sopenharmony_ci 7862306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/min_fsync_blocks 7962306a36Sopenharmony_ciDate: September 2014 8062306a36Sopenharmony_ciContact: "Jaegeuk Kim" <jaegeuk@kernel.org> 8162306a36Sopenharmony_ciDescription: Controls the dirty page count condition for the in-place-update 8262306a36Sopenharmony_ci policies. 8362306a36Sopenharmony_ci 8462306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/min_seq_blocks 8562306a36Sopenharmony_ciDate: August 2018 8662306a36Sopenharmony_ciContact: "Jaegeuk Kim" <jaegeuk@kernel.org> 8762306a36Sopenharmony_ciDescription: Controls the dirty page count condition for batched sequential 8862306a36Sopenharmony_ci writes in writepages. 8962306a36Sopenharmony_ci 9062306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/min_hot_blocks 9162306a36Sopenharmony_ciDate: March 2017 9262306a36Sopenharmony_ciContact: "Jaegeuk Kim" <jaegeuk@kernel.org> 9362306a36Sopenharmony_ciDescription: Controls the dirty page count condition for redefining hot data. 9462306a36Sopenharmony_ci 9562306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/min_ssr_sections 9662306a36Sopenharmony_ciDate: October 2017 9762306a36Sopenharmony_ciContact: "Chao Yu" <yuchao0@huawei.com> 9862306a36Sopenharmony_ciDescription: Controls the free section threshold to trigger SSR allocation. 9962306a36Sopenharmony_ci If this is large, SSR mode will be enabled early. 10062306a36Sopenharmony_ci 10162306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/max_small_discards 10262306a36Sopenharmony_ciDate: November 2013 10362306a36Sopenharmony_ciContact: "Jaegeuk Kim" <jaegeuk.kim@samsung.com> 10462306a36Sopenharmony_ciDescription: Controls the issue rate of discard commands that consist of small 10562306a36Sopenharmony_ci blocks less than 2MB. The candidates to be discarded are cached during 10662306a36Sopenharmony_ci checkpoint, and issued by issue_discard thread after checkpoint. 10762306a36Sopenharmony_ci It is enabled by default. 10862306a36Sopenharmony_ci 10962306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/max_ordered_discard 11062306a36Sopenharmony_ciDate: October 2022 11162306a36Sopenharmony_ciContact: "Yangtao Li" <frank.li@vivo.com> 11262306a36Sopenharmony_ciDescription: Controls the maximum ordered discard, the unit size is one block(4KB). 11362306a36Sopenharmony_ci Set it to 16 by default. 11462306a36Sopenharmony_ci 11562306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/max_discard_request 11662306a36Sopenharmony_ciDate: December 2021 11762306a36Sopenharmony_ciContact: "Konstantin Vyshetsky" <vkon@google.com> 11862306a36Sopenharmony_ciDescription: Controls the number of discards a thread will issue at a time. 11962306a36Sopenharmony_ci Higher number will allow the discard thread to finish its work 12062306a36Sopenharmony_ci faster, at the cost of higher latency for incoming I/O. 12162306a36Sopenharmony_ci 12262306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/min_discard_issue_time 12362306a36Sopenharmony_ciDate: December 2021 12462306a36Sopenharmony_ciContact: "Konstantin Vyshetsky" <vkon@google.com> 12562306a36Sopenharmony_ciDescription: Controls the interval the discard thread will wait between 12662306a36Sopenharmony_ci issuing discard requests when there are discards to be issued and 12762306a36Sopenharmony_ci no I/O aware interruptions occur. 12862306a36Sopenharmony_ci 12962306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/mid_discard_issue_time 13062306a36Sopenharmony_ciDate: December 2021 13162306a36Sopenharmony_ciContact: "Konstantin Vyshetsky" <vkon@google.com> 13262306a36Sopenharmony_ciDescription: Controls the interval the discard thread will wait between 13362306a36Sopenharmony_ci issuing discard requests when there are discards to be issued and 13462306a36Sopenharmony_ci an I/O aware interruption occurs. 13562306a36Sopenharmony_ci 13662306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/max_discard_issue_time 13762306a36Sopenharmony_ciDate: December 2021 13862306a36Sopenharmony_ciContact: "Konstantin Vyshetsky" <vkon@google.com> 13962306a36Sopenharmony_ciDescription: Controls the interval the discard thread will wait when there are 14062306a36Sopenharmony_ci no discard operations to be issued. 14162306a36Sopenharmony_ci 14262306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/discard_granularity 14362306a36Sopenharmony_ciDate: July 2017 14462306a36Sopenharmony_ciContact: "Chao Yu" <yuchao0@huawei.com> 14562306a36Sopenharmony_ciDescription: Controls discard granularity of inner discard thread. Inner thread 14662306a36Sopenharmony_ci will not issue discards with size that is smaller than granularity. 14762306a36Sopenharmony_ci The unit size is one block(4KB), now only support configuring 14862306a36Sopenharmony_ci in range of [1, 512]. Default value is 16. 14962306a36Sopenharmony_ci For small devices, default value is 1. 15062306a36Sopenharmony_ci 15162306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/umount_discard_timeout 15262306a36Sopenharmony_ciDate: January 2019 15362306a36Sopenharmony_ciContact: "Jaegeuk Kim" <jaegeuk@kernel.org> 15462306a36Sopenharmony_ciDescription: Set timeout to issue discard commands during umount. 15562306a36Sopenharmony_ci Default: 5 secs 15662306a36Sopenharmony_ci 15762306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/pending_discard 15862306a36Sopenharmony_ciDate: November 2021 15962306a36Sopenharmony_ciContact: "Jaegeuk Kim" <jaegeuk@kernel.org> 16062306a36Sopenharmony_ciDescription: Shows the number of pending discard commands in the queue. 16162306a36Sopenharmony_ci 16262306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/max_victim_search 16362306a36Sopenharmony_ciDate: January 2014 16462306a36Sopenharmony_ciContact: "Jaegeuk Kim" <jaegeuk.kim@samsung.com> 16562306a36Sopenharmony_ciDescription: Controls the number of trials to find a victim segment 16662306a36Sopenharmony_ci when conducting SSR and cleaning operations. The default value 16762306a36Sopenharmony_ci is 4096 which covers 8GB block address range. 16862306a36Sopenharmony_ci 16962306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/migration_granularity 17062306a36Sopenharmony_ciDate: October 2018 17162306a36Sopenharmony_ciContact: "Chao Yu" <yuchao0@huawei.com> 17262306a36Sopenharmony_ciDescription: Controls migration granularity of garbage collection on large 17362306a36Sopenharmony_ci section, it can let GC move partial segment{s} of one section 17462306a36Sopenharmony_ci in one GC cycle, so that dispersing heavy overhead GC to 17562306a36Sopenharmony_ci multiple lightweight one. 17662306a36Sopenharmony_ci 17762306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/dir_level 17862306a36Sopenharmony_ciDate: March 2014 17962306a36Sopenharmony_ciContact: "Jaegeuk Kim" <jaegeuk.kim@samsung.com> 18062306a36Sopenharmony_ciDescription: Controls the directory level for large directory. If a 18162306a36Sopenharmony_ci directory has a number of files, it can reduce the file lookup 18262306a36Sopenharmony_ci latency by increasing this dir_level value. Otherwise, it 18362306a36Sopenharmony_ci needs to decrease this value to reduce the space overhead. 18462306a36Sopenharmony_ci The default value is 0. 18562306a36Sopenharmony_ci 18662306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/ram_thresh 18762306a36Sopenharmony_ciDate: March 2014 18862306a36Sopenharmony_ciContact: "Jaegeuk Kim" <jaegeuk.kim@samsung.com> 18962306a36Sopenharmony_ciDescription: Controls the memory footprint used by free nids and cached 19062306a36Sopenharmony_ci nat entries. By default, 1 is set, which indicates 19162306a36Sopenharmony_ci 10 MB / 1 GB RAM. 19262306a36Sopenharmony_ci 19362306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/cp_interval 19462306a36Sopenharmony_ciDate: October 2015 19562306a36Sopenharmony_ciContact: "Jaegeuk Kim" <jaegeuk@kernel.org> 19662306a36Sopenharmony_ciDescription: Controls the checkpoint timing, set to 60 seconds by default. 19762306a36Sopenharmony_ci 19862306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/idle_interval 19962306a36Sopenharmony_ciDate: January 2016 20062306a36Sopenharmony_ciContact: "Jaegeuk Kim" <jaegeuk@kernel.org> 20162306a36Sopenharmony_ciDescription: Controls the idle timing of system, if there is no FS operation 20262306a36Sopenharmony_ci during given interval. 20362306a36Sopenharmony_ci Set to 5 seconds by default. 20462306a36Sopenharmony_ci 20562306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/discard_idle_interval 20662306a36Sopenharmony_ciDate: September 2018 20762306a36Sopenharmony_ciContact: "Chao Yu" <yuchao0@huawei.com> 20862306a36Sopenharmony_ciContact: "Sahitya Tummala" <stummala@codeaurora.org> 20962306a36Sopenharmony_ciDescription: Controls the idle timing of discard thread given 21062306a36Sopenharmony_ci this time interval. 21162306a36Sopenharmony_ci Default is 5 secs. 21262306a36Sopenharmony_ci 21362306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/gc_idle_interval 21462306a36Sopenharmony_ciDate: September 2018 21562306a36Sopenharmony_ciContact: "Chao Yu" <yuchao0@huawei.com> 21662306a36Sopenharmony_ciContact: "Sahitya Tummala" <stummala@codeaurora.org> 21762306a36Sopenharmony_ciDescription: Controls the idle timing for gc path. Set to 5 seconds by default. 21862306a36Sopenharmony_ci 21962306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/iostat_enable 22062306a36Sopenharmony_ciDate: August 2017 22162306a36Sopenharmony_ciContact: "Chao Yu" <yuchao0@huawei.com> 22262306a36Sopenharmony_ciDescription: Controls to enable/disable IO stat. 22362306a36Sopenharmony_ci 22462306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/ra_nid_pages 22562306a36Sopenharmony_ciDate: October 2015 22662306a36Sopenharmony_ciContact: "Chao Yu" <chao2.yu@samsung.com> 22762306a36Sopenharmony_ciDescription: Controls the count of nid pages to be readaheaded. 22862306a36Sopenharmony_ci When building free nids, F2FS reads NAT blocks ahead for 22962306a36Sopenharmony_ci speed up. Default is 0. 23062306a36Sopenharmony_ci 23162306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/dirty_nats_ratio 23262306a36Sopenharmony_ciDate: January 2016 23362306a36Sopenharmony_ciContact: "Chao Yu" <chao2.yu@samsung.com> 23462306a36Sopenharmony_ciDescription: Controls dirty nat entries ratio threshold, if current 23562306a36Sopenharmony_ci ratio exceeds configured threshold, checkpoint will 23662306a36Sopenharmony_ci be triggered for flushing dirty nat entries. 23762306a36Sopenharmony_ci 23862306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/lifetime_write_kbytes 23962306a36Sopenharmony_ciDate: January 2016 24062306a36Sopenharmony_ciContact: "Shuoran Liu" <liushuoran@huawei.com> 24162306a36Sopenharmony_ciDescription: Shows total written kbytes issued to disk. 24262306a36Sopenharmony_ci 24362306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/features 24462306a36Sopenharmony_ciDate: July 2017 24562306a36Sopenharmony_ciContact: "Jaegeuk Kim" <jaegeuk@kernel.org> 24662306a36Sopenharmony_ciDescription: <deprecated: should use /sys/fs/f2fs/<disk>/feature_list/> 24762306a36Sopenharmony_ci Shows all enabled features in current device. 24862306a36Sopenharmony_ci Supported features: 24962306a36Sopenharmony_ci encryption, blkzoned, extra_attr, projquota, inode_checksum, 25062306a36Sopenharmony_ci flexible_inline_xattr, quota_ino, inode_crtime, lost_found, 25162306a36Sopenharmony_ci verity, sb_checksum, casefold, readonly, compression, pin_file. 25262306a36Sopenharmony_ci 25362306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/feature_list/ 25462306a36Sopenharmony_ciDate: June 2021 25562306a36Sopenharmony_ciContact: "Jaegeuk Kim" <jaegeuk@kernel.org> 25662306a36Sopenharmony_ciDescription: Expand /sys/fs/f2fs/<disk>/features to meet sysfs rule. 25762306a36Sopenharmony_ci Supported on-disk features: 25862306a36Sopenharmony_ci encryption, block_zoned (aka blkzoned), extra_attr, 25962306a36Sopenharmony_ci project_quota (aka projquota), inode_checksum, 26062306a36Sopenharmony_ci flexible_inline_xattr, quota_ino, inode_crtime, lost_found, 26162306a36Sopenharmony_ci verity, sb_checksum, casefold, readonly, compression. 26262306a36Sopenharmony_ci Note that, pin_file is moved into /sys/fs/f2fs/features/. 26362306a36Sopenharmony_ci 26462306a36Sopenharmony_ciWhat: /sys/fs/f2fs/features/ 26562306a36Sopenharmony_ciDate: July 2017 26662306a36Sopenharmony_ciContact: "Jaegeuk Kim" <jaegeuk@kernel.org> 26762306a36Sopenharmony_ciDescription: Shows all enabled kernel features. 26862306a36Sopenharmony_ci Supported features: 26962306a36Sopenharmony_ci encryption, block_zoned, extra_attr, project_quota, 27062306a36Sopenharmony_ci inode_checksum, flexible_inline_xattr, quota_ino, 27162306a36Sopenharmony_ci inode_crtime, lost_found, verity, sb_checksum, 27262306a36Sopenharmony_ci casefold, readonly, compression, test_dummy_encryption_v2, 27362306a36Sopenharmony_ci atomic_write, pin_file, encrypted_casefold. 27462306a36Sopenharmony_ci 27562306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/inject_rate 27662306a36Sopenharmony_ciDate: May 2016 27762306a36Sopenharmony_ciContact: "Sheng Yong" <shengyong1@huawei.com> 27862306a36Sopenharmony_ciDescription: Controls the injection rate of arbitrary faults. 27962306a36Sopenharmony_ci 28062306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/inject_type 28162306a36Sopenharmony_ciDate: May 2016 28262306a36Sopenharmony_ciContact: "Sheng Yong" <shengyong1@huawei.com> 28362306a36Sopenharmony_ciDescription: Controls the injection type of arbitrary faults. 28462306a36Sopenharmony_ci 28562306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/dirty_segments 28662306a36Sopenharmony_ciDate: October 2017 28762306a36Sopenharmony_ciContact: "Jaegeuk Kim" <jaegeuk@kernel.org> 28862306a36Sopenharmony_ciDescription: Shows the number of dirty segments. 28962306a36Sopenharmony_ci 29062306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/reserved_blocks 29162306a36Sopenharmony_ciDate: June 2017 29262306a36Sopenharmony_ciContact: "Chao Yu" <yuchao0@huawei.com> 29362306a36Sopenharmony_ciDescription: Controls target reserved blocks in system, the threshold 29462306a36Sopenharmony_ci is soft, it could exceed current available user space. 29562306a36Sopenharmony_ci 29662306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/current_reserved_blocks 29762306a36Sopenharmony_ciDate: October 2017 29862306a36Sopenharmony_ciContact: "Yunlong Song" <yunlong.song@huawei.com> 29962306a36Sopenharmony_ciContact: "Chao Yu" <yuchao0@huawei.com> 30062306a36Sopenharmony_ciDescription: Shows current reserved blocks in system, it may be temporarily 30162306a36Sopenharmony_ci smaller than target_reserved_blocks, but will gradually 30262306a36Sopenharmony_ci increase to target_reserved_blocks when more free blocks are 30362306a36Sopenharmony_ci freed by user later. 30462306a36Sopenharmony_ci 30562306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/gc_urgent 30662306a36Sopenharmony_ciDate: August 2017 30762306a36Sopenharmony_ciContact: "Jaegeuk Kim" <jaegeuk@kernel.org> 30862306a36Sopenharmony_ciDescription: Do background GC aggressively when set. Set to 0 by default. 30962306a36Sopenharmony_ci gc urgent high(1): does GC forcibly in a period of given 31062306a36Sopenharmony_ci gc_urgent_sleep_time and ignores I/O idling check. uses greedy 31162306a36Sopenharmony_ci GC approach and turns SSR mode on. 31262306a36Sopenharmony_ci gc urgent low(2): lowers the bar of checking I/O idling in 31362306a36Sopenharmony_ci order to process outstanding discard commands and GC a 31462306a36Sopenharmony_ci little bit aggressively. uses cost benefit GC approach. 31562306a36Sopenharmony_ci gc urgent mid(3): does GC forcibly in a period of given 31662306a36Sopenharmony_ci gc_urgent_sleep_time and executes a mid level of I/O idling check. 31762306a36Sopenharmony_ci uses cost benefit GC approach. 31862306a36Sopenharmony_ci 31962306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/gc_urgent_sleep_time 32062306a36Sopenharmony_ciDate: August 2017 32162306a36Sopenharmony_ciContact: "Jaegeuk Kim" <jaegeuk@kernel.org> 32262306a36Sopenharmony_ciDescription: Controls sleep time of GC urgent mode. Set to 500ms by default. 32362306a36Sopenharmony_ci 32462306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/readdir_ra 32562306a36Sopenharmony_ciDate: November 2017 32662306a36Sopenharmony_ciContact: "Sheng Yong" <shengyong1@huawei.com> 32762306a36Sopenharmony_ciDescription: Controls readahead inode block in readdir. Enabled by default. 32862306a36Sopenharmony_ci 32962306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/gc_pin_file_thresh 33062306a36Sopenharmony_ciDate: January 2018 33162306a36Sopenharmony_ciContact: Jaegeuk Kim <jaegeuk@kernel.org> 33262306a36Sopenharmony_ciDescription: This indicates how many GC can be failed for the pinned 33362306a36Sopenharmony_ci file. If it exceeds this, F2FS doesn't guarantee its pinning 33462306a36Sopenharmony_ci state. 2048 trials is set by default. 33562306a36Sopenharmony_ci 33662306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/extension_list 33762306a36Sopenharmony_ciDate: February 2018 33862306a36Sopenharmony_ciContact: "Chao Yu" <yuchao0@huawei.com> 33962306a36Sopenharmony_ciDescription: Used to control configure extension list: 34062306a36Sopenharmony_ci - Query: cat /sys/fs/f2fs/<disk>/extension_list 34162306a36Sopenharmony_ci - Add: echo '[h/c]extension' > /sys/fs/f2fs/<disk>/extension_list 34262306a36Sopenharmony_ci - Del: echo '[h/c]!extension' > /sys/fs/f2fs/<disk>/extension_list 34362306a36Sopenharmony_ci - [h] means add/del hot file extension 34462306a36Sopenharmony_ci - [c] means add/del cold file extension 34562306a36Sopenharmony_ci 34662306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/unusable 34762306a36Sopenharmony_ciDate April 2019 34862306a36Sopenharmony_ciContact: "Daniel Rosenberg" <drosen@google.com> 34962306a36Sopenharmony_ciDescription: If checkpoint=disable, it displays the number of blocks that 35062306a36Sopenharmony_ci are unusable. 35162306a36Sopenharmony_ci If checkpoint=enable it displays the number of blocks that 35262306a36Sopenharmony_ci would be unusable if checkpoint=disable were to be set. 35362306a36Sopenharmony_ci 35462306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/encoding 35562306a36Sopenharmony_ciDate July 2019 35662306a36Sopenharmony_ciContact: "Daniel Rosenberg" <drosen@google.com> 35762306a36Sopenharmony_ciDescription: Displays name and version of the encoding set for the filesystem. 35862306a36Sopenharmony_ci If no encoding is set, displays (none) 35962306a36Sopenharmony_ci 36062306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/free_segments 36162306a36Sopenharmony_ciDate: September 2019 36262306a36Sopenharmony_ciContact: "Hridya Valsaraju" <hridya@google.com> 36362306a36Sopenharmony_ciDescription: Number of free segments in disk. 36462306a36Sopenharmony_ci 36562306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/cp_foreground_calls 36662306a36Sopenharmony_ciDate: September 2019 36762306a36Sopenharmony_ciContact: "Hridya Valsaraju" <hridya@google.com> 36862306a36Sopenharmony_ciDescription: Number of checkpoint operations performed on demand. Available when 36962306a36Sopenharmony_ci CONFIG_F2FS_STAT_FS=y. 37062306a36Sopenharmony_ci 37162306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/cp_background_calls 37262306a36Sopenharmony_ciDate: September 2019 37362306a36Sopenharmony_ciContact: "Hridya Valsaraju" <hridya@google.com> 37462306a36Sopenharmony_ciDescription: Number of checkpoint operations performed in the background to 37562306a36Sopenharmony_ci free segments. Available when CONFIG_F2FS_STAT_FS=y. 37662306a36Sopenharmony_ci 37762306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/gc_foreground_calls 37862306a36Sopenharmony_ciDate: September 2019 37962306a36Sopenharmony_ciContact: "Hridya Valsaraju" <hridya@google.com> 38062306a36Sopenharmony_ciDescription: Number of garbage collection operations performed on demand. 38162306a36Sopenharmony_ci Available when CONFIG_F2FS_STAT_FS=y. 38262306a36Sopenharmony_ci 38362306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/gc_background_calls 38462306a36Sopenharmony_ciDate: September 2019 38562306a36Sopenharmony_ciContact: "Hridya Valsaraju" <hridya@google.com> 38662306a36Sopenharmony_ciDescription: Number of garbage collection operations triggered in background. 38762306a36Sopenharmony_ci Available when CONFIG_F2FS_STAT_FS=y. 38862306a36Sopenharmony_ci 38962306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/moved_blocks_foreground 39062306a36Sopenharmony_ciDate: September 2019 39162306a36Sopenharmony_ciContact: "Hridya Valsaraju" <hridya@google.com> 39262306a36Sopenharmony_ciDescription: Number of blocks moved by garbage collection in foreground. 39362306a36Sopenharmony_ci Available when CONFIG_F2FS_STAT_FS=y. 39462306a36Sopenharmony_ci 39562306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/moved_blocks_background 39662306a36Sopenharmony_ciDate: September 2019 39762306a36Sopenharmony_ciContact: "Hridya Valsaraju" <hridya@google.com> 39862306a36Sopenharmony_ciDescription: Number of blocks moved by garbage collection in background. 39962306a36Sopenharmony_ci Available when CONFIG_F2FS_STAT_FS=y. 40062306a36Sopenharmony_ci 40162306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/avg_vblocks 40262306a36Sopenharmony_ciDate: September 2019 40362306a36Sopenharmony_ciContact: "Hridya Valsaraju" <hridya@google.com> 40462306a36Sopenharmony_ciDescription: Average number of valid blocks. 40562306a36Sopenharmony_ci Available when CONFIG_F2FS_STAT_FS=y. 40662306a36Sopenharmony_ci 40762306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/mounted_time_sec 40862306a36Sopenharmony_ciDate: February 2020 40962306a36Sopenharmony_ciContact: "Jaegeuk Kim" <jaegeuk@kernel.org> 41062306a36Sopenharmony_ciDescription: Show the mounted time in secs of this partition. 41162306a36Sopenharmony_ci 41262306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/data_io_flag 41362306a36Sopenharmony_ciDate: April 2020 41462306a36Sopenharmony_ciContact: "Jaegeuk Kim" <jaegeuk@kernel.org> 41562306a36Sopenharmony_ciDescription: Give a way to attach REQ_META|FUA to data writes 41662306a36Sopenharmony_ci given temperature-based bits. Now the bits indicate: 41762306a36Sopenharmony_ci 41862306a36Sopenharmony_ci +-------------------+-------------------+ 41962306a36Sopenharmony_ci | REQ_META | REQ_FUA | 42062306a36Sopenharmony_ci +------+------+-----+------+------+-----+ 42162306a36Sopenharmony_ci | 5 | 4 | 3 | 2 | 1 | 0 | 42262306a36Sopenharmony_ci +------+------+-----+------+------+-----+ 42362306a36Sopenharmony_ci | Cold | Warm | Hot | Cold | Warm | Hot | 42462306a36Sopenharmony_ci +------+------+-----+------+------+-----+ 42562306a36Sopenharmony_ci 42662306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/node_io_flag 42762306a36Sopenharmony_ciDate: June 2020 42862306a36Sopenharmony_ciContact: "Jaegeuk Kim" <jaegeuk@kernel.org> 42962306a36Sopenharmony_ciDescription: Give a way to attach REQ_META|FUA to node writes 43062306a36Sopenharmony_ci given temperature-based bits. Now the bits indicate: 43162306a36Sopenharmony_ci 43262306a36Sopenharmony_ci +-------------------+-------------------+ 43362306a36Sopenharmony_ci | REQ_META | REQ_FUA | 43462306a36Sopenharmony_ci +------+------+-----+------+------+-----+ 43562306a36Sopenharmony_ci | 5 | 4 | 3 | 2 | 1 | 0 | 43662306a36Sopenharmony_ci +------+------+-----+------+------+-----+ 43762306a36Sopenharmony_ci | Cold | Warm | Hot | Cold | Warm | Hot | 43862306a36Sopenharmony_ci +------+------+-----+------+------+-----+ 43962306a36Sopenharmony_ci 44062306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/iostat_period_ms 44162306a36Sopenharmony_ciDate: April 2020 44262306a36Sopenharmony_ciContact: "Daeho Jeong" <daehojeong@google.com> 44362306a36Sopenharmony_ciDescription: Give a way to change iostat_period time. 3secs by default. 44462306a36Sopenharmony_ci The new iostat trace gives stats gap given the period. 44562306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/max_io_bytes 44662306a36Sopenharmony_ciDate: December 2020 44762306a36Sopenharmony_ciContact: "Jaegeuk Kim" <jaegeuk@kernel.org> 44862306a36Sopenharmony_ciDescription: This gives a control to limit the bio size in f2fs. 44962306a36Sopenharmony_ci Default is zero, which will follow underlying block layer limit, 45062306a36Sopenharmony_ci whereas, if it has a certain bytes value, f2fs won't submit a 45162306a36Sopenharmony_ci bio larger than that size. 45262306a36Sopenharmony_ci 45362306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/stat/sb_status 45462306a36Sopenharmony_ciDate: December 2020 45562306a36Sopenharmony_ciContact: "Chao Yu" <yuchao0@huawei.com> 45662306a36Sopenharmony_ciDescription: Show status of f2fs superblock in real time. 45762306a36Sopenharmony_ci 45862306a36Sopenharmony_ci ====== ===================== ================================= 45962306a36Sopenharmony_ci value sb status macro description 46062306a36Sopenharmony_ci 0x1 SBI_IS_DIRTY dirty flag for checkpoint 46162306a36Sopenharmony_ci 0x2 SBI_IS_CLOSE specify unmounting 46262306a36Sopenharmony_ci 0x4 SBI_NEED_FSCK need fsck.f2fs to fix 46362306a36Sopenharmony_ci 0x8 SBI_POR_DOING recovery is doing or not 46462306a36Sopenharmony_ci 0x10 SBI_NEED_SB_WRITE need to recover superblock 46562306a36Sopenharmony_ci 0x20 SBI_NEED_CP need to checkpoint 46662306a36Sopenharmony_ci 0x40 SBI_IS_SHUTDOWN shutdown by ioctl 46762306a36Sopenharmony_ci 0x80 SBI_IS_RECOVERED recovered orphan/data 46862306a36Sopenharmony_ci 0x100 SBI_CP_DISABLED CP was disabled last mount 46962306a36Sopenharmony_ci 0x200 SBI_CP_DISABLED_QUICK CP was disabled quickly 47062306a36Sopenharmony_ci 0x400 SBI_QUOTA_NEED_FLUSH need to flush quota info in CP 47162306a36Sopenharmony_ci 0x800 SBI_QUOTA_SKIP_FLUSH skip flushing quota in current CP 47262306a36Sopenharmony_ci 0x1000 SBI_QUOTA_NEED_REPAIR quota file may be corrupted 47362306a36Sopenharmony_ci 0x2000 SBI_IS_RESIZEFS resizefs is in process 47462306a36Sopenharmony_ci 0x4000 SBI_IS_FREEZING freefs is in process 47562306a36Sopenharmony_ci ====== ===================== ================================= 47662306a36Sopenharmony_ci 47762306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/stat/cp_status 47862306a36Sopenharmony_ciDate: September 2022 47962306a36Sopenharmony_ciContact: "Chao Yu" <chao.yu@oppo.com> 48062306a36Sopenharmony_ciDescription: Show status of f2fs checkpoint in real time. 48162306a36Sopenharmony_ci 48262306a36Sopenharmony_ci =============================== ============================== 48362306a36Sopenharmony_ci cp flag value 48462306a36Sopenharmony_ci CP_UMOUNT_FLAG 0x00000001 48562306a36Sopenharmony_ci CP_ORPHAN_PRESENT_FLAG 0x00000002 48662306a36Sopenharmony_ci CP_COMPACT_SUM_FLAG 0x00000004 48762306a36Sopenharmony_ci CP_ERROR_FLAG 0x00000008 48862306a36Sopenharmony_ci CP_FSCK_FLAG 0x00000010 48962306a36Sopenharmony_ci CP_FASTBOOT_FLAG 0x00000020 49062306a36Sopenharmony_ci CP_CRC_RECOVERY_FLAG 0x00000040 49162306a36Sopenharmony_ci CP_NAT_BITS_FLAG 0x00000080 49262306a36Sopenharmony_ci CP_TRIMMED_FLAG 0x00000100 49362306a36Sopenharmony_ci CP_NOCRC_RECOVERY_FLAG 0x00000200 49462306a36Sopenharmony_ci CP_LARGE_NAT_BITMAP_FLAG 0x00000400 49562306a36Sopenharmony_ci CP_QUOTA_NEED_FSCK_FLAG 0x00000800 49662306a36Sopenharmony_ci CP_DISABLED_FLAG 0x00001000 49762306a36Sopenharmony_ci CP_DISABLED_QUICK_FLAG 0x00002000 49862306a36Sopenharmony_ci CP_RESIZEFS_FLAG 0x00004000 49962306a36Sopenharmony_ci =============================== ============================== 50062306a36Sopenharmony_ci 50162306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/ckpt_thread_ioprio 50262306a36Sopenharmony_ciDate: January 2021 50362306a36Sopenharmony_ciContact: "Daeho Jeong" <daehojeong@google.com> 50462306a36Sopenharmony_ciDescription: Give a way to change checkpoint merge daemon's io priority. 50562306a36Sopenharmony_ci Its default value is "be,3", which means "BE" I/O class and 50662306a36Sopenharmony_ci I/O priority "3". We can select the class between "rt" and "be", 50762306a36Sopenharmony_ci and set the I/O priority within valid range of it. "," delimiter 50862306a36Sopenharmony_ci is necessary in between I/O class and priority number. 50962306a36Sopenharmony_ci 51062306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/ovp_segments 51162306a36Sopenharmony_ciDate: March 2021 51262306a36Sopenharmony_ciContact: "Jaegeuk Kim" <jaegeuk@kernel.org> 51362306a36Sopenharmony_ciDescription: Shows the number of overprovision segments. 51462306a36Sopenharmony_ci 51562306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/compr_written_block 51662306a36Sopenharmony_ciDate: March 2021 51762306a36Sopenharmony_ciContact: "Daeho Jeong" <daehojeong@google.com> 51862306a36Sopenharmony_ciDescription: Show the block count written after compression since mount. Note 51962306a36Sopenharmony_ci that when the compressed blocks are deleted, this count doesn't 52062306a36Sopenharmony_ci decrease. If you write "0" here, you can initialize 52162306a36Sopenharmony_ci compr_written_block and compr_saved_block to "0". 52262306a36Sopenharmony_ci 52362306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/compr_saved_block 52462306a36Sopenharmony_ciDate: March 2021 52562306a36Sopenharmony_ciContact: "Daeho Jeong" <daehojeong@google.com> 52662306a36Sopenharmony_ciDescription: Show the saved block count with compression since mount. Note 52762306a36Sopenharmony_ci that when the compressed blocks are deleted, this count doesn't 52862306a36Sopenharmony_ci decrease. If you write "0" here, you can initialize 52962306a36Sopenharmony_ci compr_written_block and compr_saved_block to "0". 53062306a36Sopenharmony_ci 53162306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/compr_new_inode 53262306a36Sopenharmony_ciDate: March 2021 53362306a36Sopenharmony_ciContact: "Daeho Jeong" <daehojeong@google.com> 53462306a36Sopenharmony_ciDescription: Show the count of inode newly enabled for compression since mount. 53562306a36Sopenharmony_ci Note that when the compression is disabled for the files, this count 53662306a36Sopenharmony_ci doesn't decrease. If you write "0" here, you can initialize 53762306a36Sopenharmony_ci compr_new_inode to "0". 53862306a36Sopenharmony_ci 53962306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/atgc_candidate_ratio 54062306a36Sopenharmony_ciDate: May 2021 54162306a36Sopenharmony_ciContact: "Chao Yu" <yuchao0@huawei.com> 54262306a36Sopenharmony_ciDescription: When ATGC is on, it controls candidate ratio in order to limit total 54362306a36Sopenharmony_ci number of potential victim in all candidates, the value should be in 54462306a36Sopenharmony_ci range of [0, 100], by default it was initialized as 20(%). 54562306a36Sopenharmony_ci 54662306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/atgc_candidate_count 54762306a36Sopenharmony_ciDate: May 2021 54862306a36Sopenharmony_ciContact: "Chao Yu" <yuchao0@huawei.com> 54962306a36Sopenharmony_ciDescription: When ATGC is on, it controls candidate count in order to limit total 55062306a36Sopenharmony_ci number of potential victim in all candidates, by default it was 55162306a36Sopenharmony_ci initialized as 10 (sections). 55262306a36Sopenharmony_ci 55362306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/atgc_age_weight 55462306a36Sopenharmony_ciDate: May 2021 55562306a36Sopenharmony_ciContact: "Chao Yu" <yuchao0@huawei.com> 55662306a36Sopenharmony_ciDescription: When ATGC is on, it controls age weight to balance weight proportion 55762306a36Sopenharmony_ci in between aging and valid blocks, the value should be in range of 55862306a36Sopenharmony_ci [0, 100], by default it was initialized as 60(%). 55962306a36Sopenharmony_ci 56062306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/atgc_age_threshold 56162306a36Sopenharmony_ciDate: May 2021 56262306a36Sopenharmony_ciContact: "Chao Yu" <yuchao0@huawei.com> 56362306a36Sopenharmony_ciDescription: When ATGC is on, it controls age threshold to bypass GCing young 56462306a36Sopenharmony_ci candidates whose age is not beyond the threshold, by default it was 56562306a36Sopenharmony_ci initialized as 604800 seconds (equals to 7 days). 56662306a36Sopenharmony_ci 56762306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/gc_reclaimed_segments 56862306a36Sopenharmony_ciDate: July 2021 56962306a36Sopenharmony_ciContact: "Daeho Jeong" <daehojeong@google.com> 57062306a36Sopenharmony_ciDescription: Show how many segments have been reclaimed by GC during a specific 57162306a36Sopenharmony_ci GC mode (0: GC normal, 1: GC idle CB, 2: GC idle greedy, 57262306a36Sopenharmony_ci 3: GC idle AT, 4: GC urgent high, 5: GC urgent low 6: GC urgent mid) 57362306a36Sopenharmony_ci You can re-initialize this value to "0". 57462306a36Sopenharmony_ci 57562306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/gc_segment_mode 57662306a36Sopenharmony_ciDate: July 2021 57762306a36Sopenharmony_ciContact: "Daeho Jeong" <daehojeong@google.com> 57862306a36Sopenharmony_ciDescription: You can control for which gc mode the "gc_reclaimed_segments" node shows. 57962306a36Sopenharmony_ci Refer to the description of the modes in "gc_reclaimed_segments". 58062306a36Sopenharmony_ci 58162306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/seq_file_ra_mul 58262306a36Sopenharmony_ciDate: July 2021 58362306a36Sopenharmony_ciContact: "Daeho Jeong" <daehojeong@google.com> 58462306a36Sopenharmony_ciDescription: You can control the multiplier value of bdi device readahead window size 58562306a36Sopenharmony_ci between 2 (default) and 256 for POSIX_FADV_SEQUENTIAL advise option. 58662306a36Sopenharmony_ci 58762306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/max_fragment_chunk 58862306a36Sopenharmony_ciDate: August 2021 58962306a36Sopenharmony_ciContact: "Daeho Jeong" <daehojeong@google.com> 59062306a36Sopenharmony_ciDescription: With "mode=fragment:block" mount options, we can scatter block allocation. 59162306a36Sopenharmony_ci f2fs will allocate 1..<max_fragment_chunk> blocks in a chunk and make a hole 59262306a36Sopenharmony_ci in the length of 1..<max_fragment_hole> by turns. This value can be set 59362306a36Sopenharmony_ci between 1..512 and the default value is 4. 59462306a36Sopenharmony_ci 59562306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/max_fragment_hole 59662306a36Sopenharmony_ciDate: August 2021 59762306a36Sopenharmony_ciContact: "Daeho Jeong" <daehojeong@google.com> 59862306a36Sopenharmony_ciDescription: With "mode=fragment:block" mount options, we can scatter block allocation. 59962306a36Sopenharmony_ci f2fs will allocate 1..<max_fragment_chunk> blocks in a chunk and make a hole 60062306a36Sopenharmony_ci in the length of 1..<max_fragment_hole> by turns. This value can be set 60162306a36Sopenharmony_ci between 1..512 and the default value is 4. 60262306a36Sopenharmony_ci 60362306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/gc_remaining_trials 60462306a36Sopenharmony_ciDate: October 2022 60562306a36Sopenharmony_ciContact: "Yangtao Li" <frank.li@vivo.com> 60662306a36Sopenharmony_ciDescription: You can set the trial count limit for GC urgent and idle mode with this value. 60762306a36Sopenharmony_ci If GC thread gets to the limit, the mode will turn back to GC normal mode. 60862306a36Sopenharmony_ci By default, the value is zero, which means there is no limit like before. 60962306a36Sopenharmony_ci 61062306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/max_roll_forward_node_blocks 61162306a36Sopenharmony_ciDate: January 2022 61262306a36Sopenharmony_ciContact: "Jaegeuk Kim" <jaegeuk@kernel.org> 61362306a36Sopenharmony_ciDescription: Controls max # of node block writes to be used for roll forward 61462306a36Sopenharmony_ci recovery. This can limit the roll forward recovery time. 61562306a36Sopenharmony_ci 61662306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/unusable_blocks_per_sec 61762306a36Sopenharmony_ciDate: June 2022 61862306a36Sopenharmony_ciContact: "Jaegeuk Kim" <jaegeuk@kernel.org> 61962306a36Sopenharmony_ciDescription: Shows the number of unusable blocks in a section which was defined by 62062306a36Sopenharmony_ci the zone capacity reported by underlying zoned device. 62162306a36Sopenharmony_ci 62262306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/current_atomic_write 62362306a36Sopenharmony_ciDate: July 2022 62462306a36Sopenharmony_ciContact: "Daeho Jeong" <daehojeong@google.com> 62562306a36Sopenharmony_ciDescription: Show the total current atomic write block count, which is not committed yet. 62662306a36Sopenharmony_ci This is a read-only entry. 62762306a36Sopenharmony_ci 62862306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/peak_atomic_write 62962306a36Sopenharmony_ciDate: July 2022 63062306a36Sopenharmony_ciContact: "Daeho Jeong" <daehojeong@google.com> 63162306a36Sopenharmony_ciDescription: Show the peak value of total current atomic write block count after boot. 63262306a36Sopenharmony_ci If you write "0" here, you can initialize to "0". 63362306a36Sopenharmony_ci 63462306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/committed_atomic_block 63562306a36Sopenharmony_ciDate: July 2022 63662306a36Sopenharmony_ciContact: "Daeho Jeong" <daehojeong@google.com> 63762306a36Sopenharmony_ciDescription: Show the accumulated total committed atomic write block count after boot. 63862306a36Sopenharmony_ci If you write "0" here, you can initialize to "0". 63962306a36Sopenharmony_ci 64062306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/revoked_atomic_block 64162306a36Sopenharmony_ciDate: July 2022 64262306a36Sopenharmony_ciContact: "Daeho Jeong" <daehojeong@google.com> 64362306a36Sopenharmony_ciDescription: Show the accumulated total revoked atomic write block count after boot. 64462306a36Sopenharmony_ci If you write "0" here, you can initialize to "0". 64562306a36Sopenharmony_ci 64662306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/gc_mode 64762306a36Sopenharmony_ciDate: October 2022 64862306a36Sopenharmony_ciContact: "Yangtao Li" <frank.li@vivo.com> 64962306a36Sopenharmony_ciDescription: Show the current gc_mode as a string. 65062306a36Sopenharmony_ci This is a read-only entry. 65162306a36Sopenharmony_ci 65262306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/discard_urgent_util 65362306a36Sopenharmony_ciDate: November 2022 65462306a36Sopenharmony_ciContact: "Yangtao Li" <frank.li@vivo.com> 65562306a36Sopenharmony_ciDescription: When space utilization exceeds this, do background DISCARD aggressively. 65662306a36Sopenharmony_ci Does DISCARD forcibly in a period of given min_discard_issue_time when the number 65762306a36Sopenharmony_ci of discards is not 0 and set discard granularity to 1. 65862306a36Sopenharmony_ci Default: 80 65962306a36Sopenharmony_ci 66062306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/hot_data_age_threshold 66162306a36Sopenharmony_ciDate: November 2022 66262306a36Sopenharmony_ciContact: "Ping Xiong" <xiongping1@xiaomi.com> 66362306a36Sopenharmony_ciDescription: When DATA SEPARATION is on, it controls the age threshold to indicate 66462306a36Sopenharmony_ci the data blocks as hot. By default it was initialized as 262144 blocks 66562306a36Sopenharmony_ci (equals to 1GB). 66662306a36Sopenharmony_ci 66762306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/warm_data_age_threshold 66862306a36Sopenharmony_ciDate: November 2022 66962306a36Sopenharmony_ciContact: "Ping Xiong" <xiongping1@xiaomi.com> 67062306a36Sopenharmony_ciDescription: When DATA SEPARATION is on, it controls the age threshold to indicate 67162306a36Sopenharmony_ci the data blocks as warm. By default it was initialized as 2621440 blocks 67262306a36Sopenharmony_ci (equals to 10GB). 67362306a36Sopenharmony_ci 67462306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/fault_rate 67562306a36Sopenharmony_ciDate: May 2016 67662306a36Sopenharmony_ciContact: "Sheng Yong" <shengyong@oppo.com> 67762306a36Sopenharmony_ciContact: "Chao Yu" <chao@kernel.org> 67862306a36Sopenharmony_ciDescription: Enable fault injection in all supported types with 67962306a36Sopenharmony_ci specified injection rate. 68062306a36Sopenharmony_ci 68162306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/fault_type 68262306a36Sopenharmony_ciDate: May 2016 68362306a36Sopenharmony_ciContact: "Sheng Yong" <shengyong@oppo.com> 68462306a36Sopenharmony_ciContact: "Chao Yu" <chao@kernel.org> 68562306a36Sopenharmony_ciDescription: Support configuring fault injection type, should be 68662306a36Sopenharmony_ci enabled with fault_injection option, fault type value 68762306a36Sopenharmony_ci is shown below, it supports single or combined type. 68862306a36Sopenharmony_ci 68962306a36Sopenharmony_ci =================== =========== 69062306a36Sopenharmony_ci Type_Name Type_Value 69162306a36Sopenharmony_ci =================== =========== 69262306a36Sopenharmony_ci FAULT_KMALLOC 0x000000001 69362306a36Sopenharmony_ci FAULT_KVMALLOC 0x000000002 69462306a36Sopenharmony_ci FAULT_PAGE_ALLOC 0x000000004 69562306a36Sopenharmony_ci FAULT_PAGE_GET 0x000000008 69662306a36Sopenharmony_ci FAULT_ALLOC_BIO 0x000000010 (obsolete) 69762306a36Sopenharmony_ci FAULT_ALLOC_NID 0x000000020 69862306a36Sopenharmony_ci FAULT_ORPHAN 0x000000040 69962306a36Sopenharmony_ci FAULT_BLOCK 0x000000080 70062306a36Sopenharmony_ci FAULT_DIR_DEPTH 0x000000100 70162306a36Sopenharmony_ci FAULT_EVICT_INODE 0x000000200 70262306a36Sopenharmony_ci FAULT_TRUNCATE 0x000000400 70362306a36Sopenharmony_ci FAULT_READ_IO 0x000000800 70462306a36Sopenharmony_ci FAULT_CHECKPOINT 0x000001000 70562306a36Sopenharmony_ci FAULT_DISCARD 0x000002000 70662306a36Sopenharmony_ci FAULT_WRITE_IO 0x000004000 70762306a36Sopenharmony_ci FAULT_SLAB_ALLOC 0x000008000 70862306a36Sopenharmony_ci FAULT_DQUOT_INIT 0x000010000 70962306a36Sopenharmony_ci FAULT_LOCK_OP 0x000020000 71062306a36Sopenharmony_ci FAULT_BLKADDR 0x000040000 71162306a36Sopenharmony_ci =================== =========== 71262306a36Sopenharmony_ci 71362306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/discard_io_aware_gran 71462306a36Sopenharmony_ciDate: January 2023 71562306a36Sopenharmony_ciContact: "Yangtao Li" <frank.li@vivo.com> 71662306a36Sopenharmony_ciDescription: Controls background discard granularity of inner discard thread 71762306a36Sopenharmony_ci when is not in idle. Inner thread will not issue discards with size that 71862306a36Sopenharmony_ci is smaller than granularity. The unit size is one block(4KB), now only 71962306a36Sopenharmony_ci support configuring in range of [0, 512]. 72062306a36Sopenharmony_ci Default: 512 72162306a36Sopenharmony_ci 72262306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/last_age_weight 72362306a36Sopenharmony_ciDate: January 2023 72462306a36Sopenharmony_ciContact: "Ping Xiong" <xiongping1@xiaomi.com> 72562306a36Sopenharmony_ciDescription: When DATA SEPARATION is on, it controls the weight of last data block age. 72662306a36Sopenharmony_ci 72762306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/compress_watermark 72862306a36Sopenharmony_ciDate: February 2023 72962306a36Sopenharmony_ciContact: "Yangtao Li" <frank.li@vivo.com> 73062306a36Sopenharmony_ciDescription: When compress cache is on, it controls free memory watermark 73162306a36Sopenharmony_ci in order to limit caching compress page. If free memory is lower 73262306a36Sopenharmony_ci than watermark, then deny caching compress page. The value should be in 73362306a36Sopenharmony_ci range of (0, 100], by default it was initialized as 20(%). 73462306a36Sopenharmony_ci 73562306a36Sopenharmony_ciWhat: /sys/fs/f2fs/<disk>/compress_percent 73662306a36Sopenharmony_ciDate: February 2023 73762306a36Sopenharmony_ciContact: "Yangtao Li" <frank.li@vivo.com> 73862306a36Sopenharmony_ciDescription: When compress cache is on, it controls cached page 73962306a36Sopenharmony_ci percent(compress pages / free_ram) in order to limit caching compress page. 74062306a36Sopenharmony_ci If cached page percent exceed threshold, then deny caching compress page. 74162306a36Sopenharmony_ci The value should be in range of (0, 100], by default it was initialized 74262306a36Sopenharmony_ci as 20(%). 743