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