1# SPDX-License-Identifier: GPL-2.0-only 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 9 select CRYPTO if UBIFS_FS_ZSTD 10 select CRYPTO_LZO if UBIFS_FS_LZO 11 select CRYPTO_DEFLATE if UBIFS_FS_ZLIB 12 select CRYPTO_ZSTD if UBIFS_FS_ZSTD 13 select CRYPTO_HASH_INFO 14 select UBIFS_FS_XATTR if FS_ENCRYPTION 15 select FS_ENCRYPTION_ALGS if FS_ENCRYPTION 16 depends on MTD_UBI 17 help 18 UBIFS is a file system for flash devices which works on top of UBI. 19 20if UBIFS_FS 21 22config UBIFS_FS_ADVANCED_COMPR 23 bool "Advanced compression options" 24 help 25 This option allows to explicitly choose which compressions, if any, 26 are enabled in UBIFS. Removing compressors means inability to read 27 existing file systems. 28 29 If unsure, say 'N'. 30 31config UBIFS_FS_LZO 32 bool "LZO compression support" if UBIFS_FS_ADVANCED_COMPR 33 default y 34 help 35 LZO compressor is generally faster than zlib but compresses worse. 36 Say 'Y' if unsure. 37 38config UBIFS_FS_ZLIB 39 bool "ZLIB compression support" if UBIFS_FS_ADVANCED_COMPR 40 default y 41 help 42 Zlib compresses better than LZO but it is slower. Say 'Y' if unsure. 43 44config UBIFS_FS_ZSTD 45 bool "ZSTD compression support" if UBIFS_FS_ADVANCED_COMPR 46 depends on UBIFS_FS 47 default y 48 help 49 ZSTD compresses is a big win in speed over Zlib and 50 in compression ratio over LZO. Say 'Y' if unsure. 51 52config UBIFS_ATIME_SUPPORT 53 bool "Access time support" 54 default n 55 help 56 Originally UBIFS did not support atime, because it looked like a bad idea due 57 increased flash wear. This option adds atime support and it is disabled by default 58 to preserve the old behavior. If you enable this option, UBIFS starts updating atime, 59 which means that file-system read operations will cause writes (inode atime 60 updates). This may affect file-system performance and increase flash device wear, 61 so be careful. How often atime is updated depends on the selected strategy: 62 strictatime is the "heavy", relatime is "lighter", etc. 63 64 If unsure, say 'N' 65 66config UBIFS_FS_XATTR 67 bool "UBIFS XATTR support" 68 default y 69 help 70 Saying Y here includes support for extended attributes (xattrs). 71 Xattrs are name:value pairs associated with inodes by 72 the kernel or by users (see the attr(5) manual page). 73 74 If unsure, say Y. 75 76config UBIFS_FS_SECURITY 77 bool "UBIFS Security Labels" 78 depends on 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. 88 89config UBIFS_FS_AUTHENTICATION 90 bool "UBIFS authentication support" 91 select KEYS 92 select CRYPTO_HMAC 93 select SYSTEM_DATA_VERIFICATION 94 help 95 Enable authentication support for UBIFS. This feature offers protection 96 against offline changes for both data and metadata of the filesystem. 97 If you say yes here you should also select a hashing algorithm such as 98 sha256, these are not selected automatically since there are many 99 different options. 100 101endif # UBIFS_FS 102