xref: /linux/fs/ubifs/Kconfig (revision eeabb9866e4ccce55d875cad140f9bf7c7ba1d66)
1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only
20d7eff87SArtem Bityutskiyconfig UBIFS_FS
30d7eff87SArtem Bityutskiy	tristate "UBIFS file system support"
40d7eff87SArtem Bityutskiy	select CRC16
50d7eff87SArtem Bityutskiy	select CRC32
60d7eff87SArtem Bityutskiy	select CRYPTO if UBIFS_FS_ADVANCED_COMPR
70d7eff87SArtem Bityutskiy	select CRYPTO if UBIFS_FS_LZO
80d7eff87SArtem Bityutskiy	select CRYPTO if UBIFS_FS_ZLIB
9*eeabb986SMichele Dionisio	select CRYPTO if UBIFS_FS_ZSTD
100d7eff87SArtem Bityutskiy	select CRYPTO_LZO if UBIFS_FS_LZO
110d7eff87SArtem Bityutskiy	select CRYPTO_DEFLATE if UBIFS_FS_ZLIB
12*eeabb986SMichele Dionisio	select CRYPTO_ZSTD if UBIFS_FS_ZSTD
1349525e5eSSascha Hauer	select CRYPTO_HASH_INFO
14643fa961SChandan Rajendra	select UBIFS_FS_XATTR if FS_ENCRYPTION
150d7eff87SArtem Bityutskiy	depends on MTD_UBI
160d7eff87SArtem Bityutskiy	help
170d7eff87SArtem Bityutskiy	  UBIFS is a file system for flash devices which works on top of UBI.
180d7eff87SArtem Bityutskiy
19aa3d31e0SGeert Uytterhoevenif UBIFS_FS
20aa3d31e0SGeert Uytterhoeven
210d7eff87SArtem Bityutskiyconfig UBIFS_FS_ADVANCED_COMPR
220d7eff87SArtem Bityutskiy	bool "Advanced compression options"
230d7eff87SArtem Bityutskiy	help
240d7eff87SArtem Bityutskiy	  This option allows to explicitly choose which compressions, if any,
25692105b8SMatt LaPlante	  are enabled in UBIFS. Removing compressors means inability to read
260d7eff87SArtem Bityutskiy	  existing file systems.
270d7eff87SArtem Bityutskiy
280d7eff87SArtem Bityutskiy	  If unsure, say 'N'.
290d7eff87SArtem Bityutskiy
300d7eff87SArtem Bityutskiyconfig UBIFS_FS_LZO
310d7eff87SArtem Bityutskiy	bool "LZO compression support" if UBIFS_FS_ADVANCED_COMPR
320d7eff87SArtem Bityutskiy	default y
330d7eff87SArtem Bityutskiy	help
34692105b8SMatt LaPlante	   LZO compressor is generally faster than zlib but compresses worse.
350d7eff87SArtem Bityutskiy	   Say 'Y' if unsure.
360d7eff87SArtem Bityutskiy
370d7eff87SArtem Bityutskiyconfig UBIFS_FS_ZLIB
380d7eff87SArtem Bityutskiy	bool "ZLIB compression support" if UBIFS_FS_ADVANCED_COMPR
390d7eff87SArtem Bityutskiy	default y
400d7eff87SArtem Bityutskiy	help
41025dfdafSFrederik Schwarzer	  Zlib compresses better than LZO but it is slower. Say 'Y' if unsure.
428c1c5f26SDongsheng Yang
43*eeabb986SMichele Dionisioconfig UBIFS_FS_ZSTD
44*eeabb986SMichele Dionisio	bool "ZSTD compression support" if UBIFS_FS_ADVANCED_COMPR
45*eeabb986SMichele Dionisio	depends on UBIFS_FS
46*eeabb986SMichele Dionisio	default y
47*eeabb986SMichele Dionisio	help
48*eeabb986SMichele Dionisio	  ZSTD compresses is a big win in speed over Zlib and
49*eeabb986SMichele Dionisio	  in compression ratio over LZO. Say 'Y' if unsure.
50*eeabb986SMichele Dionisio
518c1c5f26SDongsheng Yangconfig UBIFS_ATIME_SUPPORT
52aa3d31e0SGeert Uytterhoeven	bool "Access time support"
538c1c5f26SDongsheng Yang	default n
548c1c5f26SDongsheng Yang	help
558c1c5f26SDongsheng Yang	  Originally UBIFS did not support atime, because it looked like a bad idea due
568c1c5f26SDongsheng Yang	  increased flash wear. This option adds atime support and it is disabled by default
578c1c5f26SDongsheng Yang	  to preserve the old behavior. If you enable this option, UBIFS starts updating atime,
588c1c5f26SDongsheng Yang	  which means that file-system read operations will cause writes (inode atime
598c1c5f26SDongsheng Yang	  updates). This may affect file-system performance and increase flash device wear,
608c1c5f26SDongsheng Yang	  so be careful. How often atime is updated depends on the selected strategy:
618c1c5f26SDongsheng Yang	  strictatime is the "heavy", relatime is "lighter", etc.
628c1c5f26SDongsheng Yang
638c1c5f26SDongsheng Yang	  If unsure, say 'N'
64d475a507SRichard Weinberger
657e5471ceSStefan Agnerconfig UBIFS_FS_XATTR
667e5471ceSStefan Agner	bool "UBIFS XATTR support"
677e5471ceSStefan Agner	default y
687e5471ceSStefan Agner	help
697e5471ceSStefan Agner	  Saying Y here includes support for extended attributes (xattrs).
707e5471ceSStefan Agner	  Xattrs are name:value pairs associated with inodes by
717e5471ceSStefan Agner	  the kernel or by users (see the attr(5) manual page).
727e5471ceSStefan Agner
737e5471ceSStefan Agner	  If unsure, say Y.
747e5471ceSStefan Agner
758326c1eeSHyunchul Leeconfig UBIFS_FS_SECURITY
768326c1eeSHyunchul Lee	bool "UBIFS Security Labels"
77aa3d31e0SGeert Uytterhoeven	depends on UBIFS_FS_XATTR
788326c1eeSHyunchul Lee	default y
798326c1eeSHyunchul Lee	help
808326c1eeSHyunchul Lee	  Security labels provide an access control facility to support Linux
818326c1eeSHyunchul Lee	  Security Models (LSMs) accepted by AppArmor, SELinux, Smack and TOMOYO
828326c1eeSHyunchul Lee	  Linux. This option enables an extended attribute handler for file
838326c1eeSHyunchul Lee	  security labels in the ubifs filesystem, so that it requires enabling
848326c1eeSHyunchul Lee	  the extended attribute support in advance.
858326c1eeSHyunchul Lee
868326c1eeSHyunchul Lee	  If you are not using a security module, say N.
87d8a22773SSascha Hauer
88d8a22773SSascha Hauerconfig UBIFS_FS_AUTHENTICATION
89d8a22773SSascha Hauer	bool "UBIFS authentication support"
90817aa094SSascha Hauer	select KEYS
91d8a22773SSascha Hauer	select CRYPTO_HMAC
92817aa094SSascha Hauer	select SYSTEM_DATA_VERIFICATION
93d8a22773SSascha Hauer	help
94d8a22773SSascha Hauer	  Enable authentication support for UBIFS. This feature offers protection
95d8a22773SSascha Hauer	  against offline changes for both data and metadata of the filesystem.
96d8a22773SSascha Hauer	  If you say yes here you should also select a hashing algorithm such as
97d8a22773SSascha Hauer	  sha256, these are not selected automatically since there are many
98d8a22773SSascha Hauer	  different options.
99aa3d31e0SGeert Uytterhoeven
100aa3d31e0SGeert Uytterhoevenendif # UBIFS_FS
101