Merge tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi
[linux-2.6-block.git] / fs / ubifs / Kconfig
CommitLineData
ec8f24b7 1# SPDX-License-Identifier: GPL-2.0-only
0d7eff87
AB
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
eeabb986 9 select CRYPTO if UBIFS_FS_ZSTD
0d7eff87
AB
10 select CRYPTO_LZO if UBIFS_FS_LZO
11 select CRYPTO_DEFLATE if UBIFS_FS_ZLIB
eeabb986 12 select CRYPTO_ZSTD if UBIFS_FS_ZSTD
49525e5e 13 select CRYPTO_HASH_INFO
643fa961 14 select UBIFS_FS_XATTR if FS_ENCRYPTION
0d7eff87
AB
15 depends on MTD_UBI
16 help
17 UBIFS is a file system for flash devices which works on top of UBI.
18
aa3d31e0
GU
19if UBIFS_FS
20
0d7eff87
AB
21config UBIFS_FS_ADVANCED_COMPR
22 bool "Advanced compression options"
0d7eff87
AB
23 help
24 This option allows to explicitly choose which compressions, if any,
692105b8 25 are enabled in UBIFS. Removing compressors means inability to read
0d7eff87
AB
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
0d7eff87
AB
32 default y
33 help
692105b8 34 LZO compressor is generally faster than zlib but compresses worse.
0d7eff87
AB
35 Say 'Y' if unsure.
36
37config UBIFS_FS_ZLIB
38 bool "ZLIB compression support" if UBIFS_FS_ADVANCED_COMPR
0d7eff87
AB
39 default y
40 help
025dfdaf 41 Zlib compresses better than LZO but it is slower. Say 'Y' if unsure.
8c1c5f26 42
eeabb986
MD
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
8c1c5f26 51config UBIFS_ATIME_SUPPORT
aa3d31e0 52 bool "Access time support"
8c1c5f26
DY
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'
d475a507 64
7e5471ce
SA
65config UBIFS_FS_XATTR
66 bool "UBIFS XATTR support"
7e5471ce
SA
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
8326c1ee
HL
75config UBIFS_FS_SECURITY
76 bool "UBIFS Security Labels"
aa3d31e0 77 depends on UBIFS_FS_XATTR
8326c1ee
HL
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.
d8a22773
SH
87
88config UBIFS_FS_AUTHENTICATION
89 bool "UBIFS authentication support"
817aa094 90 select KEYS
d8a22773 91 select CRYPTO_HMAC
817aa094 92 select SYSTEM_DATA_VERIFICATION
d8a22773
SH
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.
aa3d31e0
GU
99
100endif # UBIFS_FS