147e4937aSGao Xiang# SPDX-License-Identifier: GPL-2.0-only 247e4937aSGao Xiang 347e4937aSGao Xiangconfig EROFS_FS 447e4937aSGao Xiang tristate "EROFS filesystem support" 547e4937aSGao Xiang depends on BLOCK 6a08e67a0SHuang Jianan select FS_IOMAP 7b858a484SPratik Shinde select LIBCRC32C 847e4937aSGao Xiang help 9dfeab2e9SGao Xiang EROFS (Enhanced Read-Only File System) is a lightweight read-only 10dfeab2e9SGao Xiang file system with modern designs (e.g. no buffer heads, inline 11dfeab2e9SGao Xiang xattrs/data, chunk-based deduplication, multiple devices, etc.) for 12dfeab2e9SGao Xiang scenarios which need high-performance read-only solutions, e.g. 13dfeab2e9SGao Xiang smartphones with Android OS, LiveCDs and high-density hosts with 14dfeab2e9SGao Xiang numerous containers; 1547e4937aSGao Xiang 16dfeab2e9SGao Xiang It also provides fixed-sized output compression support in order to 17dfeab2e9SGao Xiang improve storage density as well as keep relatively higher compression 18dfeab2e9SGao Xiang ratios and implements in-place decompression to reuse the file page 19dfeab2e9SGao Xiang for compressed data temporarily with proper strategies, which is 20dfeab2e9SGao Xiang quite useful to ensure guaranteed end-to-end runtime decompression 21dfeab2e9SGao Xiang performance under extremely memory pressure without extra cost. 22dfeab2e9SGao Xiang 23dfeab2e9SGao Xiang See the documentation at <file:Documentation/filesystems/erofs.rst> 24dfeab2e9SGao Xiang for more details. 2547e4937aSGao Xiang 2647e4937aSGao Xiang If unsure, say N. 2747e4937aSGao Xiang 2847e4937aSGao Xiangconfig EROFS_FS_DEBUG 2947e4937aSGao Xiang bool "EROFS debugging feature" 3047e4937aSGao Xiang depends on EROFS_FS 3147e4937aSGao Xiang help 3247e4937aSGao Xiang Print debugging messages and enable more BUG_ONs which check 3347e4937aSGao Xiang filesystem consistency and find potential issues aggressively, 3447e4937aSGao Xiang which can be used for Android eng build, for example. 3547e4937aSGao Xiang 3647e4937aSGao Xiang For daily use, say N. 3747e4937aSGao Xiang 3847e4937aSGao Xiangconfig EROFS_FS_XATTR 3947e4937aSGao Xiang bool "EROFS extended attributes" 4047e4937aSGao Xiang depends on EROFS_FS 4147e4937aSGao Xiang default y 4247e4937aSGao Xiang help 4347e4937aSGao Xiang Extended attributes are name:value pairs associated with inodes by 4447e4937aSGao Xiang the kernel or by users (see the attr(5) manual page, or visit 4547e4937aSGao Xiang <http://acl.bestbits.at/> for details). 4647e4937aSGao Xiang 4747e4937aSGao Xiang If unsure, say N. 4847e4937aSGao Xiang 4947e4937aSGao Xiangconfig EROFS_FS_POSIX_ACL 5047e4937aSGao Xiang bool "EROFS Access Control Lists" 5147e4937aSGao Xiang depends on EROFS_FS_XATTR 5247e4937aSGao Xiang select FS_POSIX_ACL 5347e4937aSGao Xiang default y 5447e4937aSGao Xiang help 5547e4937aSGao Xiang Posix Access Control Lists (ACLs) support permissions for users and 5647e4937aSGao Xiang groups beyond the owner/group/world scheme. 5747e4937aSGao Xiang 5847e4937aSGao Xiang To learn more about Access Control Lists, visit the POSIX ACLs for 5947e4937aSGao Xiang Linux website <http://acl.bestbits.at/>. 6047e4937aSGao Xiang 6147e4937aSGao Xiang If you don't know what Access Control Lists are, say N. 6247e4937aSGao Xiang 6347e4937aSGao Xiangconfig EROFS_FS_SECURITY 6447e4937aSGao Xiang bool "EROFS Security Labels" 6547e4937aSGao Xiang depends on EROFS_FS_XATTR 6647e4937aSGao Xiang default y 6747e4937aSGao Xiang help 6847e4937aSGao Xiang Security labels provide an access control facility to support Linux 6947e4937aSGao Xiang Security Models (LSMs) accepted by AppArmor, SELinux, Smack and TOMOYO 7047e4937aSGao Xiang Linux. This option enables an extended attribute handler for file 7147e4937aSGao Xiang security labels in the erofs filesystem, so that it requires enabling 7247e4937aSGao Xiang the extended attribute support in advance. 7347e4937aSGao Xiang 7447e4937aSGao Xiang If you are not using a security module, say N. 7547e4937aSGao Xiang 7647e4937aSGao Xiangconfig EROFS_FS_ZIP 7747e4937aSGao Xiang bool "EROFS Data Compression Support" 7847e4937aSGao Xiang depends on EROFS_FS 7947e4937aSGao Xiang select LZ4_DECOMPRESS 8047e4937aSGao Xiang default y 8147e4937aSGao Xiang help 8247e4937aSGao Xiang Enable fixed-sized output compression for EROFS. 8347e4937aSGao Xiang 8447e4937aSGao Xiang If you don't want to enable compression feature, say N. 85622ceaddSGao Xiang 86622ceaddSGao Xiangconfig EROFS_FS_ZIP_LZMA 87622ceaddSGao Xiang bool "EROFS LZMA compressed data support" 88622ceaddSGao Xiang depends on EROFS_FS_ZIP 89622ceaddSGao Xiang select XZ_DEC 90622ceaddSGao Xiang select XZ_DEC_MICROLZMA 91622ceaddSGao Xiang help 92622ceaddSGao Xiang Saying Y here includes support for reading EROFS file systems 93622ceaddSGao Xiang containing LZMA compressed data, specifically called microLZMA. it 94622ceaddSGao Xiang gives better compression ratios than the LZ4 algorithm, at the 95622ceaddSGao Xiang expense of more CPU overhead. 96622ceaddSGao Xiang 97622ceaddSGao Xiang LZMA support is an experimental feature for now and so most file 98622ceaddSGao Xiang systems will be readable without selecting this option. 99622ceaddSGao Xiang 100622ceaddSGao Xiang If unsure, say N. 101*c6be2bd0SJeffle Xu 102*c6be2bd0SJeffle Xuconfig EROFS_FS_ONDEMAND 103*c6be2bd0SJeffle Xu bool "EROFS fscache-based on-demand read support" 104*c6be2bd0SJeffle Xu depends on CACHEFILES_ONDEMAND && (EROFS_FS=m && FSCACHE || EROFS_FS=y && FSCACHE=y) 105*c6be2bd0SJeffle Xu default n 106*c6be2bd0SJeffle Xu help 107*c6be2bd0SJeffle Xu This permits EROFS to use fscache-backed data blobs with on-demand 108*c6be2bd0SJeffle Xu read support. 109*c6be2bd0SJeffle Xu 110*c6be2bd0SJeffle Xu If unsure, say N. 111