1# SPDX-License-Identifier: GPL-2.0-only 2config F2FS_FS 3 tristate "F2FS filesystem support" 4 depends on BLOCK 5 select NLS 6 select CRYPTO 7 select CRYPTO_CRC32 8 select F2FS_FS_XATTR if FS_ENCRYPTION 9 select FS_ENCRYPTION_ALGS if FS_ENCRYPTION 10 select LZ4_COMPRESS if F2FS_FS_LZ4 11 select LZ4_DECOMPRESS if F2FS_FS_LZ4 12 select LZ4HC_COMPRESS if F2FS_FS_LZ4HC 13 select LZO_COMPRESS if F2FS_FS_LZO 14 select LZO_DECOMPRESS if F2FS_FS_LZO 15 select ZSTD_COMPRESS if F2FS_FS_ZSTD 16 select ZSTD_DECOMPRESS if F2FS_FS_ZSTD 17 help 18 F2FS is based on Log-structured File System (LFS), which supports 19 versatile "flash-friendly" features. The design has been focused on 20 addressing the fundamental issues in LFS, which are snowball effect 21 of wandering tree and high cleaning overhead. 22 23 Since flash-based storages show different characteristics according to 24 the internal geometry or flash memory management schemes aka FTL, F2FS 25 and tools support various parameters not only for configuring on-disk 26 layout, but also for selecting allocation and cleaning algorithms. 27 28 If unsure, say N. 29 30config F2FS_STAT_FS 31 bool "F2FS Status Information" 32 depends on F2FS_FS 33 default y 34 help 35 /sys/kernel/debug/f2fs/ contains information about all the partitions 36 mounted as f2fs. Each file shows the whole f2fs information. 37 38 /sys/kernel/debug/f2fs/status includes: 39 - major filesystem information managed by f2fs currently 40 - average SIT information about whole segments 41 - current memory footprint consumed by f2fs. 42 43config F2FS_FS_XATTR 44 bool "F2FS extended attributes" 45 depends on F2FS_FS 46 default y 47 help 48 Extended attributes are name:value pairs associated with inodes by 49 the kernel or by users (see the attr(5) manual page for details). 50 51 If unsure, say N. 52 53config F2FS_FS_POSIX_ACL 54 bool "F2FS Access Control Lists" 55 depends on F2FS_FS_XATTR 56 select FS_POSIX_ACL 57 default y 58 help 59 Posix Access Control Lists (ACLs) support permissions for users and 60 groups beyond the owner/group/world scheme. 61 62 If you don't know what Access Control Lists are, say N 63 64config F2FS_FS_SECURITY 65 bool "F2FS Security Labels" 66 depends on F2FS_FS_XATTR 67 help 68 Security labels provide an access control facility to support Linux 69 Security Models (LSMs) accepted by AppArmor, SELinux, Smack and TOMOYO 70 Linux. This option enables an extended attribute handler for file 71 security labels in the f2fs filesystem, so that it requires enabling 72 the extended attribute support in advance. In particular you need this 73 option if you use the setcap command to assign initial process capabi- 74 lities to executables (the security.* extended attributes). 75 76 If you are not using a security module, say N. 77 78config F2FS_CHECK_FS 79 bool "F2FS consistency checking feature" 80 depends on F2FS_FS 81 help 82 Enables BUG_ONs which check the filesystem consistency in runtime. 83 84 If you want to improve the performance, say N. 85 86config F2FS_FAULT_INJECTION 87 bool "F2FS fault injection facility" 88 depends on F2FS_FS 89 help 90 Test F2FS to inject faults such as ENOMEM, ENOSPC, and so on. 91 92 If unsure, say N. 93 94config F2FS_FS_COMPRESSION 95 bool "F2FS compression feature" 96 depends on F2FS_FS 97 help 98 Enable filesystem-level compression on f2fs regular files, 99 multiple back-end compression algorithms are supported. 100 101config F2FS_FS_LZO 102 bool "LZO compression support" 103 depends on F2FS_FS_COMPRESSION 104 default y 105 help 106 Support LZO compress algorithm, if unsure, say Y. 107 108config F2FS_FS_LZORLE 109 bool "LZO-RLE compression support" 110 depends on F2FS_FS_LZO 111 default y 112 help 113 Support LZO-RLE compress algorithm, if unsure, say Y. 114 115config F2FS_FS_LZ4 116 bool "LZ4 compression support" 117 depends on F2FS_FS_COMPRESSION 118 default y 119 help 120 Support LZ4 compress algorithm, if unsure, say Y. 121 122config F2FS_FS_LZ4HC 123 bool "LZ4HC compression support" 124 depends on F2FS_FS_LZ4 125 default y 126 help 127 Support LZ4HC compress algorithm, LZ4HC has compatible on-disk 128 layout with LZ4, if unsure, say Y. 129 130config F2FS_FS_ZSTD 131 bool "ZSTD compression support" 132 depends on F2FS_FS_COMPRESSION 133 default y 134 help 135 Support ZSTD compress algorithm, if unsure, say Y. 136 137config F2FS_IOSTAT 138 bool "F2FS IO statistics information" 139 depends on F2FS_FS 140 default y 141 help 142 Support getting IO statistics through sysfs and printing out periodic 143 IO statistics tracepoint events. You have to turn on "iostat_enable" 144 sysfs node to enable this feature. 145