GNU Linux-libre 4.19.211-gnu1
[releases.git] / fs / ubifs / Kconfig
1 config 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
14 config 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
24 config 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
32 config 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
39 config 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
54 config UBIFS_FS_XATTR
55         bool "UBIFS XATTR support"
56         depends on UBIFS_FS
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_ENCRYPTION
66         bool "UBIFS Encryption"
67         depends on UBIFS_FS && UBIFS_FS_XATTR && BLOCK
68         select FS_ENCRYPTION
69         default n
70         help
71           Enable encryption of UBIFS files and directories. This
72           feature is similar to ecryptfs, but it is more memory
73           efficient since it avoids caching the encrypted and
74           decrypted pages in the page cache.
75
76 config UBIFS_FS_SECURITY
77         bool "UBIFS Security Labels"
78         depends on UBIFS_FS && UBIFS_FS_XATTR
79         default y
80         help
81           Security labels provide an access control facility to support Linux
82           Security Models (LSMs) accepted by AppArmor, SELinux, Smack and TOMOYO
83           Linux. This option enables an extended attribute handler for file
84           security labels in the ubifs filesystem, so that it requires enabling
85           the extended attribute support in advance.
86
87           If you are not using a security module, say N.