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