| xj | b04a402 | 2021-11-25 15:01:52 +0800 | [diff] [blame] | 1 | config F2FS_FS |
| 2 | tristate "F2FS filesystem support" |
| 3 | depends on BLOCK |
| 4 | select NLS |
| 5 | select CRYPTO |
| 6 | select CRYPTO_CRC32 |
| 7 | select F2FS_FS_XATTR if FS_ENCRYPTION |
| 8 | help |
| 9 | F2FS is based on Log-structured File System (LFS), which supports |
| 10 | versatile "flash-friendly" features. The design has been focused on |
| 11 | addressing the fundamental issues in LFS, which are snowball effect |
| 12 | of wandering tree and high cleaning overhead. |
| 13 | |
| 14 | Since flash-based storages show different characteristics according to |
| 15 | the internal geometry or flash memory management schemes aka FTL, F2FS |
| 16 | and tools support various parameters not only for configuring on-disk |
| 17 | layout, but also for selecting allocation and cleaning algorithms. |
| 18 | |
| 19 | If unsure, say N. |
| 20 | |
| 21 | config F2FS_STAT_FS |
| 22 | bool "F2FS Status Information" |
| 23 | depends on F2FS_FS && DEBUG_FS |
| 24 | default y |
| 25 | help |
| 26 | /sys/kernel/debug/f2fs/ contains information about all the partitions |
| 27 | mounted as f2fs. Each file shows the whole f2fs information. |
| 28 | |
| 29 | /sys/kernel/debug/f2fs/status includes: |
| 30 | - major filesystem information managed by f2fs currently |
| 31 | - average SIT information about whole segments |
| 32 | - current memory footprint consumed by f2fs. |
| 33 | |
| 34 | config F2FS_FS_XATTR |
| 35 | bool "F2FS extended attributes" |
| 36 | depends on F2FS_FS |
| 37 | default y |
| 38 | help |
| 39 | Extended attributes are name:value pairs associated with inodes by |
| 40 | the kernel or by users (see the attr(5) manual page for details). |
| 41 | |
| 42 | If unsure, say N. |
| 43 | |
| 44 | config F2FS_FS_POSIX_ACL |
| 45 | bool "F2FS Access Control Lists" |
| 46 | depends on F2FS_FS_XATTR |
| 47 | select FS_POSIX_ACL |
| 48 | default y |
| 49 | help |
| 50 | Posix Access Control Lists (ACLs) support permissions for users and |
| 51 | groups beyond the owner/group/world scheme. |
| 52 | |
| 53 | If you don't know what Access Control Lists are, say N |
| 54 | |
| 55 | config F2FS_FS_SECURITY |
| 56 | bool "F2FS Security Labels" |
| 57 | depends on F2FS_FS_XATTR |
| 58 | help |
| 59 | Security labels provide an access control facility to support Linux |
| 60 | Security Models (LSMs) accepted by AppArmor, SELinux, Smack and TOMOYO |
| 61 | Linux. This option enables an extended attribute handler for file |
| 62 | security labels in the f2fs filesystem, so that it requires enabling |
| 63 | the extended attribute support in advance. In particular you need this |
| 64 | option if you use the setcap command to assign initial process capabi- |
| 65 | lities to executables (the security.* extended attributes). |
| 66 | |
| 67 | If you are not using a security module, say N. |
| 68 | |
| 69 | config F2FS_CHECK_FS |
| 70 | bool "F2FS consistency checking feature" |
| 71 | depends on F2FS_FS |
| 72 | help |
| 73 | Enables BUG_ONs which check the filesystem consistency in runtime. |
| 74 | |
| 75 | If you want to improve the performance, say N. |
| 76 | |
| 77 | config F2FS_FS_ENCRYPTION |
| 78 | bool "F2FS Encryption" |
| 79 | depends on F2FS_FS |
| 80 | select FS_ENCRYPTION |
| 81 | help |
| 82 | This kconfig symbol is deprecated; now it just selects |
| 83 | FS_ENCRYPTION. Use CONFIG_FS_ENCRYPTION=y in new config |
| 84 | files. |
| 85 | |
| 86 | config F2FS_IO_TRACE |
| 87 | bool "F2FS IO tracer" |
| 88 | depends on F2FS_FS |
| 89 | depends on FUNCTION_TRACER |
| 90 | help |
| 91 | F2FS IO trace is based on a function trace, which gathers process |
| 92 | information and block IO patterns in the filesystem level. |
| 93 | |
| 94 | If unsure, say N. |
| 95 | |
| 96 | config F2FS_FAULT_INJECTION |
| 97 | bool "F2FS fault injection facility" |
| 98 | depends on F2FS_FS |
| 99 | help |
| 100 | Test F2FS to inject faults such as ENOMEM, ENOSPC, and so on. |
| 101 | |
| 102 | If unsure, say N. |