blob: d13c5c6a978769b69eef060d50569c578616ba14 [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
Jaegeuk Kima14d53932012-11-02 17:25:27 +090010 help
11 F2FS is based on Log-structured File System (LFS), which supports
12 versatile "flash-friendly" features. The design has been focused on
13 addressing the fundamental issues in LFS, which are snowball effect
14 of wandering tree and high cleaning overhead.
15
16 Since flash-based storages show different characteristics according to
17 the internal geometry or flash memory management schemes aka FTL, F2FS
18 and tools support various parameters not only for configuring on-disk
19 layout, but also for selecting allocation and cleaning algorithms.
20
21 If unsure, say N.
22
23config F2FS_STAT_FS
24 bool "F2FS Status Information"
Hridya Valsarajufc7100e2020-01-22 10:51:16 -080025 depends on F2FS_FS
Jaegeuk Kima14d53932012-11-02 17:25:27 +090026 default y
27 help
28 /sys/kernel/debug/f2fs/ contains information about all the partitions
29 mounted as f2fs. Each file shows the whole f2fs information.
30
31 /sys/kernel/debug/f2fs/status includes:
arter97e1c42042014-08-06 23:22:50 +090032 - major filesystem information managed by f2fs currently
Jaegeuk Kima14d53932012-11-02 17:25:27 +090033 - average SIT information about whole segments
34 - current memory footprint consumed by f2fs.
35
36config F2FS_FS_XATTR
37 bool "F2FS extended attributes"
38 depends on F2FS_FS
39 default y
40 help
41 Extended attributes are name:value pairs associated with inodes by
Adam Borowski91581e42017-12-20 14:58:52 +010042 the kernel or by users (see the attr(5) manual page for details).
Jaegeuk Kima14d53932012-11-02 17:25:27 +090043
44 If unsure, say N.
45
46config F2FS_FS_POSIX_ACL
47 bool "F2FS Access Control Lists"
48 depends on F2FS_FS_XATTR
49 select FS_POSIX_ACL
50 default y
51 help
52 Posix Access Control Lists (ACLs) support permissions for users and
Junesung Lee217940d2015-08-18 22:42:15 +090053 groups beyond the owner/group/world scheme.
Jaegeuk Kima14d53932012-11-02 17:25:27 +090054
Jaegeuk Kima14d53932012-11-02 17:25:27 +090055 If you don't know what Access Control Lists are, say N
Jaegeuk Kim8ae8f162013-06-03 19:46:19 +090056
57config F2FS_FS_SECURITY
58 bool "F2FS Security Labels"
59 depends on F2FS_FS_XATTR
60 help
61 Security labels provide an access control facility to support Linux
62 Security Models (LSMs) accepted by AppArmor, SELinux, Smack and TOMOYO
63 Linux. This option enables an extended attribute handler for file
64 security labels in the f2fs filesystem, so that it requires enabling
Lockywolfbd7253b2019-08-25 17:28:38 +080065 the extended attribute support in advance. In particular you need this
66 option if you use the setcap command to assign initial process capabi-
67 lities to executables (the security.* extended attributes).
Jaegeuk Kim8ae8f162013-06-03 19:46:19 +090068
69 If you are not using a security module, say N.
Jaegeuk Kim3b218e32013-10-29 15:43:01 +090070
71config F2FS_CHECK_FS
72 bool "F2FS consistency checking feature"
73 depends on F2FS_FS
74 help
arter97e1c42042014-08-06 23:22:50 +090075 Enables BUG_ONs which check the filesystem consistency in runtime.
Jaegeuk Kim3b218e32013-10-29 15:43:01 +090076
77 If you want to improve the performance, say N.
Jaegeuk Kim63f92dd2014-12-17 19:45:05 -080078
79config F2FS_IO_TRACE
80 bool "F2FS IO tracer"
81 depends on F2FS_FS
82 depends on FUNCTION_TRACER
83 help
84 F2FS IO trace is based on a function trace, which gathers process
85 information and block IO patterns in the filesystem level.
86
87 If unsure, say N.
Jaegeuk Kim73faec42016-04-29 15:34:32 -070088
89config F2FS_FAULT_INJECTION
90 bool "F2FS fault injection facility"
91 depends on F2FS_FS
92 help
93 Test F2FS to inject faults such as ENOMEM, ENOSPC, and so on.
94
95 If unsure, say N.
Chao Yu4c8ff702019-11-01 18:07:14 +080096
97config F2FS_FS_COMPRESSION
98 bool "F2FS compression feature"
99 depends on F2FS_FS
100 help
101 Enable filesystem-level compression on f2fs regular files,
102 multiple back-end compression algorithms are supported.
103
104config F2FS_FS_LZO
105 bool "LZO compression support"
106 depends on F2FS_FS_COMPRESSION
107 select LZO_COMPRESS
108 select LZO_DECOMPRESS
109 default y
110 help
111 Support LZO compress algorithm, if unsure, say Y.
112
113config F2FS_FS_LZ4
114 bool "LZ4 compression support"
115 depends on F2FS_FS_COMPRESSION
116 select LZ4_COMPRESS
117 select LZ4_DECOMPRESS
118 default y
119 help
120 Support LZ4 compress algorithm, if unsure, say Y.
Chao Yu50cfa662020-03-03 17:46:02 +0800121
122config F2FS_FS_ZSTD
123 bool "ZSTD compression support"
124 depends on F2FS_FS_COMPRESSION
125 select ZSTD_COMPRESS
126 select ZSTD_DECOMPRESS
127 default y
128 help
129 Support ZSTD compress algorithm, if unsure, say Y.
Chao Yu6d92b202020-04-08 19:56:32 +0800130
131config F2FS_FS_LZORLE
132 bool "LZO-RLE compression support"
133 depends on F2FS_FS_COMPRESSION
134 depends on F2FS_FS_LZO
135 select LZO_COMPRESS
136 select LZO_DECOMPRESS
137 default y
138 help
139 Support LZO-RLE compress algorithm, if unsure, say Y.