blob: 7eea3cfd894d1dfb0ec7d554f0094083f4aa01a7 [file] [log] [blame]
Thomas Gleixnerec8f24b2019-05-19 13:07:45 +01001# SPDX-License-Identifier: GPL-2.0-only
Jaegeuk Kima14d53932012-11-02 17:25:27 +09002config F2FS_FS
Jaegeuk Kimd7196c52015-03-03 17:06:55 -08003 tristate "F2FS filesystem support"
Jaegeuk Kim573ea5f2012-11-30 17:32:08 +09004 depends on BLOCK
YueHaibingaabc1722019-08-08 10:02:53 +08005 select NLS
Keith Mok43b65732016-03-02 12:04:24 -08006 select CRYPTO
7 select CRYPTO_CRC32
Chandan Rajendra643fa962018-12-12 15:20:12 +05308 select F2FS_FS_XATTR if FS_ENCRYPTION
Herbert Xuede7a092019-12-27 10:47:00 +08009 select FS_ENCRYPTION_ALGS if FS_ENCRYPTION
Geert Uytterhoeven72f85882021-02-26 16:51:42 +010010 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
Jaegeuk Kima14d53932012-11-02 17:25:27 +090017 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"
Hridya Valsarajufc7100e2020-01-22 10:51:16 -080032 depends on F2FS_FS
Jaegeuk Kima14d53932012-11-02 17:25:27 +090033 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:
arter97e1c42042014-08-06 23:22:50 +090039 - major filesystem information managed by f2fs currently
Jaegeuk Kima14d53932012-11-02 17:25:27 +090040 - 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
Adam Borowski91581e42017-12-20 14:58:52 +010049 the kernel or by users (see the attr(5) manual page for details).
Jaegeuk Kima14d53932012-11-02 17:25:27 +090050
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
Junesung Lee217940d2015-08-18 22:42:15 +090060 groups beyond the owner/group/world scheme.
Jaegeuk Kima14d53932012-11-02 17:25:27 +090061
Jaegeuk Kima14d53932012-11-02 17:25:27 +090062 If you don't know what Access Control Lists are, say N
Jaegeuk Kim8ae8f162013-06-03 19:46:19 +090063
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
Lockywolfbd7253b2019-08-25 17:28:38 +080072 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).
Jaegeuk Kim8ae8f162013-06-03 19:46:19 +090075
76 If you are not using a security module, say N.
Jaegeuk Kim3b218e32013-10-29 15:43:01 +090077
78config F2FS_CHECK_FS
79 bool "F2FS consistency checking feature"
80 depends on F2FS_FS
81 help
arter97e1c42042014-08-06 23:22:50 +090082 Enables BUG_ONs which check the filesystem consistency in runtime.
Jaegeuk Kim3b218e32013-10-29 15:43:01 +090083
84 If you want to improve the performance, say N.
Jaegeuk Kim63f92dd2014-12-17 19:45:05 -080085
Jaegeuk Kim73faec4d2016-04-29 15:34:32 -070086config 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.
Chao Yu4c8ff702019-11-01 18:07:14 +080093
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
Chao Yu4c8ff702019-11-01 18:07:14 +0800104 default y
105 help
106 Support LZO compress algorithm, if unsure, say Y.
107
Tiezhu Yang6b3ba1e2021-08-05 21:30:24 +0800108config 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
Chao Yu4c8ff702019-11-01 18:07:14 +0800115config F2FS_FS_LZ4
116 bool "LZ4 compression support"
117 depends on F2FS_FS_COMPRESSION
Chao Yu4c8ff702019-11-01 18:07:14 +0800118 default y
119 help
120 Support LZ4 compress algorithm, if unsure, say Y.
Chao Yu50cfa662020-03-03 17:46:02 +0800121
Chao Yu3fde13f2021-01-22 17:46:43 +0800122config F2FS_FS_LZ4HC
123 bool "LZ4HC compression support"
Chao Yu3fde13f2021-01-22 17:46:43 +0800124 depends on F2FS_FS_LZ4
Chao Yu3fde13f2021-01-22 17:46:43 +0800125 default y
126 help
127 Support LZ4HC compress algorithm, LZ4HC has compatible on-disk
128 layout with LZ4, if unsure, say Y.
129
Chao Yu50cfa662020-03-03 17:46:02 +0800130config F2FS_FS_ZSTD
131 bool "ZSTD compression support"
132 depends on F2FS_FS_COMPRESSION
Chao Yu50cfa662020-03-03 17:46:02 +0800133 default y
134 help
135 Support ZSTD compress algorithm, if unsure, say Y.
Daeho Jeong52118742021-08-19 20:52:28 -0700136
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.