1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only 2a14d5393SJaegeuk Kimconfig F2FS_FS 3d7196c5aSJaegeuk Kim tristate "F2FS filesystem support" 4573ea5fcSJaegeuk Kim depends on BLOCK 5aabc172bSYueHaibing select NLS 643b6573bSKeith Mok select CRYPTO 743b6573bSKeith Mok select CRYPTO_CRC32 8643fa961SChandan Rajendra select F2FS_FS_XATTR if FS_ENCRYPTION 9a14d5393SJaegeuk Kim help 10a14d5393SJaegeuk Kim F2FS is based on Log-structured File System (LFS), which supports 11a14d5393SJaegeuk Kim versatile "flash-friendly" features. The design has been focused on 12a14d5393SJaegeuk Kim addressing the fundamental issues in LFS, which are snowball effect 13a14d5393SJaegeuk Kim of wandering tree and high cleaning overhead. 14a14d5393SJaegeuk Kim 15a14d5393SJaegeuk Kim Since flash-based storages show different characteristics according to 16a14d5393SJaegeuk Kim the internal geometry or flash memory management schemes aka FTL, F2FS 17a14d5393SJaegeuk Kim and tools support various parameters not only for configuring on-disk 18a14d5393SJaegeuk Kim layout, but also for selecting allocation and cleaning algorithms. 19a14d5393SJaegeuk Kim 20a14d5393SJaegeuk Kim If unsure, say N. 21a14d5393SJaegeuk Kim 22a14d5393SJaegeuk Kimconfig F2FS_STAT_FS 23a14d5393SJaegeuk Kim bool "F2FS Status Information" 24fc7100eaSHridya Valsaraju depends on F2FS_FS 25a14d5393SJaegeuk Kim default y 26a14d5393SJaegeuk Kim help 27a14d5393SJaegeuk Kim /sys/kernel/debug/f2fs/ contains information about all the partitions 28a14d5393SJaegeuk Kim mounted as f2fs. Each file shows the whole f2fs information. 29a14d5393SJaegeuk Kim 30a14d5393SJaegeuk Kim /sys/kernel/debug/f2fs/status includes: 31a14d5393SJaegeuk Kim - major filesystem information managed by f2fs currently 32a14d5393SJaegeuk Kim - average SIT information about whole segments 33a14d5393SJaegeuk Kim - current memory footprint consumed by f2fs. 34a14d5393SJaegeuk Kim 35a14d5393SJaegeuk Kimconfig F2FS_FS_XATTR 36a14d5393SJaegeuk Kim bool "F2FS extended attributes" 37a14d5393SJaegeuk Kim depends on F2FS_FS 38a14d5393SJaegeuk Kim default y 39a14d5393SJaegeuk Kim help 40a14d5393SJaegeuk Kim Extended attributes are name:value pairs associated with inodes by 4191581e4cSAdam Borowski the kernel or by users (see the attr(5) manual page for details). 42a14d5393SJaegeuk Kim 43a14d5393SJaegeuk Kim If unsure, say N. 44a14d5393SJaegeuk Kim 45a14d5393SJaegeuk Kimconfig F2FS_FS_POSIX_ACL 46a14d5393SJaegeuk Kim bool "F2FS Access Control Lists" 47a14d5393SJaegeuk Kim depends on F2FS_FS_XATTR 48a14d5393SJaegeuk Kim select FS_POSIX_ACL 49a14d5393SJaegeuk Kim default y 50a14d5393SJaegeuk Kim help 51a14d5393SJaegeuk Kim Posix Access Control Lists (ACLs) support permissions for users and 52217940d4SJunesung Lee groups beyond the owner/group/world scheme. 53a14d5393SJaegeuk Kim 54a14d5393SJaegeuk Kim If you don't know what Access Control Lists are, say N 558ae8f162SJaegeuk Kim 568ae8f162SJaegeuk Kimconfig F2FS_FS_SECURITY 578ae8f162SJaegeuk Kim bool "F2FS Security Labels" 588ae8f162SJaegeuk Kim depends on F2FS_FS_XATTR 598ae8f162SJaegeuk Kim help 608ae8f162SJaegeuk Kim Security labels provide an access control facility to support Linux 618ae8f162SJaegeuk Kim Security Models (LSMs) accepted by AppArmor, SELinux, Smack and TOMOYO 628ae8f162SJaegeuk Kim Linux. This option enables an extended attribute handler for file 638ae8f162SJaegeuk Kim security labels in the f2fs filesystem, so that it requires enabling 64bd7253bcSLockywolf the extended attribute support in advance. In particular you need this 65bd7253bcSLockywolf option if you use the setcap command to assign initial process capabi- 66bd7253bcSLockywolf lities to executables (the security.* extended attributes). 678ae8f162SJaegeuk Kim 688ae8f162SJaegeuk Kim If you are not using a security module, say N. 693b218e3aSJaegeuk Kim 703b218e3aSJaegeuk Kimconfig F2FS_CHECK_FS 713b218e3aSJaegeuk Kim bool "F2FS consistency checking feature" 723b218e3aSJaegeuk Kim depends on F2FS_FS 733b218e3aSJaegeuk Kim help 743b218e3aSJaegeuk Kim Enables BUG_ONs which check the filesystem consistency in runtime. 753b218e3aSJaegeuk Kim 763b218e3aSJaegeuk Kim If you want to improve the performance, say N. 7763f92ddcSJaegeuk Kim 7863f92ddcSJaegeuk Kimconfig F2FS_IO_TRACE 7963f92ddcSJaegeuk Kim bool "F2FS IO tracer" 8063f92ddcSJaegeuk Kim depends on F2FS_FS 8163f92ddcSJaegeuk Kim depends on FUNCTION_TRACER 8263f92ddcSJaegeuk Kim help 8363f92ddcSJaegeuk Kim F2FS IO trace is based on a function trace, which gathers process 8463f92ddcSJaegeuk Kim information and block IO patterns in the filesystem level. 8563f92ddcSJaegeuk Kim 8663f92ddcSJaegeuk Kim If unsure, say N. 8773faec4dSJaegeuk Kim 8873faec4dSJaegeuk Kimconfig F2FS_FAULT_INJECTION 8973faec4dSJaegeuk Kim bool "F2FS fault injection facility" 9073faec4dSJaegeuk Kim depends on F2FS_FS 9173faec4dSJaegeuk Kim help 9273faec4dSJaegeuk Kim Test F2FS to inject faults such as ENOMEM, ENOSPC, and so on. 9373faec4dSJaegeuk Kim 9473faec4dSJaegeuk Kim If unsure, say N. 954c8ff709SChao Yu 964c8ff709SChao Yuconfig F2FS_FS_COMPRESSION 974c8ff709SChao Yu bool "F2FS compression feature" 984c8ff709SChao Yu depends on F2FS_FS 994c8ff709SChao Yu help 1004c8ff709SChao Yu Enable filesystem-level compression on f2fs regular files, 1014c8ff709SChao Yu multiple back-end compression algorithms are supported. 1024c8ff709SChao Yu 1034c8ff709SChao Yuconfig F2FS_FS_LZO 1044c8ff709SChao Yu bool "LZO compression support" 1054c8ff709SChao Yu depends on F2FS_FS_COMPRESSION 1064c8ff709SChao Yu select LZO_COMPRESS 1074c8ff709SChao Yu select LZO_DECOMPRESS 1084c8ff709SChao Yu default y 1094c8ff709SChao Yu help 1104c8ff709SChao Yu Support LZO compress algorithm, if unsure, say Y. 1114c8ff709SChao Yu 1124c8ff709SChao Yuconfig F2FS_FS_LZ4 1134c8ff709SChao Yu bool "LZ4 compression support" 1144c8ff709SChao Yu depends on F2FS_FS_COMPRESSION 1154c8ff709SChao Yu select LZ4_COMPRESS 1164c8ff709SChao Yu select LZ4_DECOMPRESS 1174c8ff709SChao Yu default y 1184c8ff709SChao Yu help 1194c8ff709SChao Yu Support LZ4 compress algorithm, if unsure, say Y. 120