Loading...
1# SPDX-License-Identifier: GPL-2.0-only
2config UBIFS_FS
3 tristate "UBIFS file system support"
4 select CRC16
5 select CRC32
6 select CRYPTO if UBIFS_FS_ADVANCED_COMPR
7 select CRYPTO if UBIFS_FS_LZO
8 select CRYPTO if UBIFS_FS_ZLIB
9 select CRYPTO if UBIFS_FS_ZSTD
10 select CRYPTO_LZO if UBIFS_FS_LZO
11 select CRYPTO_DEFLATE if UBIFS_FS_ZLIB
12 select CRYPTO_ZSTD if UBIFS_FS_ZSTD
13 select CRYPTO_HASH_INFO
14 select UBIFS_FS_XATTR if FS_ENCRYPTION
15 depends on MTD_UBI
16 help
17 UBIFS is a file system for flash devices which works on top of UBI.
18
19if UBIFS_FS
20
21config UBIFS_FS_ADVANCED_COMPR
22 bool "Advanced compression options"
23 help
24 This option allows to explicitly choose which compressions, if any,
25 are enabled in UBIFS. Removing compressors means inability to read
26 existing file systems.
27
28 If unsure, say 'N'.
29
30config UBIFS_FS_LZO
31 bool "LZO compression support" if UBIFS_FS_ADVANCED_COMPR
32 default y
33 help
34 LZO compressor is generally faster than zlib but compresses worse.
35 Say 'Y' if unsure.
36
37config UBIFS_FS_ZLIB
38 bool "ZLIB compression support" if UBIFS_FS_ADVANCED_COMPR
39 default y
40 help
41 Zlib compresses better than LZO but it is slower. Say 'Y' if unsure.
42
43config UBIFS_FS_ZSTD
44 bool "ZSTD compression support" if UBIFS_FS_ADVANCED_COMPR
45 depends on UBIFS_FS
46 default y
47 help
48 ZSTD compresses is a big win in speed over Zlib and
49 in compression ratio over LZO. Say 'Y' if unsure.
50
51config UBIFS_ATIME_SUPPORT
52 bool "Access time support"
53 default n
54 help
55 Originally UBIFS did not support atime, because it looked like a bad idea due
56 increased flash wear. This option adds atime support and it is disabled by default
57 to preserve the old behavior. If you enable this option, UBIFS starts updating atime,
58 which means that file-system read operations will cause writes (inode atime
59 updates). This may affect file-system performance and increase flash device wear,
60 so be careful. How often atime is updated depends on the selected strategy:
61 strictatime is the "heavy", relatime is "lighter", etc.
62
63 If unsure, say 'N'
64
65config UBIFS_FS_XATTR
66 bool "UBIFS XATTR support"
67 default y
68 help
69 Saying Y here includes support for extended attributes (xattrs).
70 Xattrs are name:value pairs associated with inodes by
71 the kernel or by users (see the attr(5) manual page).
72
73 If unsure, say Y.
74
75config UBIFS_FS_SECURITY
76 bool "UBIFS Security Labels"
77 depends on UBIFS_FS_XATTR
78 default y
79 help
80 Security labels provide an access control facility to support Linux
81 Security Models (LSMs) accepted by AppArmor, SELinux, Smack and TOMOYO
82 Linux. This option enables an extended attribute handler for file
83 security labels in the ubifs filesystem, so that it requires enabling
84 the extended attribute support in advance.
85
86 If you are not using a security module, say N.
87
88config UBIFS_FS_AUTHENTICATION
89 bool "UBIFS authentication support"
90 select KEYS
91 select CRYPTO_HMAC
92 select SYSTEM_DATA_VERIFICATION
93 help
94 Enable authentication support for UBIFS. This feature offers protection
95 against offline changes for both data and metadata of the filesystem.
96 If you say yes here you should also select a hashing algorithm such as
97 sha256, these are not selected automatically since there are many
98 different options.
99
100endif # UBIFS_FS
1config UBIFS_FS
2 tristate "UBIFS file system support"
3 select CRC16
4 select CRC32
5 select CRYPTO if UBIFS_FS_ADVANCED_COMPR
6 select CRYPTO if UBIFS_FS_LZO
7 select CRYPTO if UBIFS_FS_ZLIB
8 select CRYPTO_LZO if UBIFS_FS_LZO
9 select CRYPTO_DEFLATE if UBIFS_FS_ZLIB
10 depends on MTD_UBI
11 help
12 UBIFS is a file system for flash devices which works on top of UBI.
13
14config UBIFS_FS_ADVANCED_COMPR
15 bool "Advanced compression options"
16 depends on UBIFS_FS
17 help
18 This option allows to explicitly choose which compressions, if any,
19 are enabled in UBIFS. Removing compressors means inability to read
20 existing file systems.
21
22 If unsure, say 'N'.
23
24config UBIFS_FS_LZO
25 bool "LZO compression support" if UBIFS_FS_ADVANCED_COMPR
26 depends on UBIFS_FS
27 default y
28 help
29 LZO compressor is generally faster than zlib but compresses worse.
30 Say 'Y' if unsure.
31
32config UBIFS_FS_ZLIB
33 bool "ZLIB compression support" if UBIFS_FS_ADVANCED_COMPR
34 depends on UBIFS_FS
35 default y
36 help
37 Zlib compresses better than LZO but it is slower. Say 'Y' if unsure.
38
39config UBIFS_ATIME_SUPPORT
40 bool "Access time support" if UBIFS_FS
41 depends on UBIFS_FS
42 default n
43 help
44 Originally UBIFS did not support atime, because it looked like a bad idea due
45 increased flash wear. This option adds atime support and it is disabled by default
46 to preserve the old behavior. If you enable this option, UBIFS starts updating atime,
47 which means that file-system read operations will cause writes (inode atime
48 updates). This may affect file-system performance and increase flash device wear,
49 so be careful. How often atime is updated depends on the selected strategy:
50 strictatime is the "heavy", relatime is "lighter", etc.
51
52 If unsure, say 'N'
53
54config UBIFS_FS_ENCRYPTION
55 bool "UBIFS Encryption"
56 depends on UBIFS_FS && BLOCK
57 select FS_ENCRYPTION
58 default n
59 help
60 Enable encryption of UBIFS files and directories. This
61 feature is similar to ecryptfs, but it is more memory
62 efficient since it avoids caching the encrypted and
63 decrypted pages in the page cache.