2019-07-31 23:57:31 +08:00
|
|
|
# SPDX-License-Identifier: GPL-2.0-only
|
2018-07-26 20:21:51 +08:00
|
|
|
|
|
|
|
config EROFS_FS
|
|
|
|
tristate "EROFS filesystem support"
|
2018-08-28 11:39:48 +08:00
|
|
|
depends on BLOCK
|
2021-08-05 08:35:59 +08:00
|
|
|
select FS_IOMAP
|
2019-11-04 10:49:37 +08:00
|
|
|
select LIBCRC32C
|
2018-07-26 20:21:51 +08:00
|
|
|
help
|
2021-10-14 16:10:10 +08:00
|
|
|
EROFS (Enhanced Read-Only File System) is a lightweight read-only
|
|
|
|
file system with modern designs (e.g. no buffer heads, inline
|
|
|
|
xattrs/data, chunk-based deduplication, multiple devices, etc.) for
|
|
|
|
scenarios which need high-performance read-only solutions, e.g.
|
|
|
|
smartphones with Android OS, LiveCDs and high-density hosts with
|
|
|
|
numerous containers;
|
|
|
|
|
|
|
|
It also provides fixed-sized output compression support in order to
|
|
|
|
improve storage density as well as keep relatively higher compression
|
|
|
|
ratios and implements in-place decompression to reuse the file page
|
|
|
|
for compressed data temporarily with proper strategies, which is
|
|
|
|
quite useful to ensure guaranteed end-to-end runtime decompression
|
|
|
|
performance under extremely memory pressure without extra cost.
|
|
|
|
|
|
|
|
See the documentation at <file:Documentation/filesystems/erofs.rst>
|
|
|
|
for more details.
|
2018-07-26 20:21:51 +08:00
|
|
|
|
|
|
|
If unsure, say N.
|
|
|
|
|
|
|
|
config EROFS_FS_DEBUG
|
|
|
|
bool "EROFS debugging feature"
|
|
|
|
depends on EROFS_FS
|
|
|
|
help
|
2019-07-31 23:57:52 +08:00
|
|
|
Print debugging messages and enable more BUG_ONs which check
|
|
|
|
filesystem consistency and find potential issues aggressively,
|
|
|
|
which can be used for Android eng build, for example.
|
2018-07-26 20:21:51 +08:00
|
|
|
|
|
|
|
For daily use, say N.
|
|
|
|
|
2018-07-26 20:21:52 +08:00
|
|
|
config EROFS_FS_XATTR
|
|
|
|
bool "EROFS extended attributes"
|
|
|
|
depends on EROFS_FS
|
|
|
|
default y
|
|
|
|
help
|
|
|
|
Extended attributes are name:value pairs associated with inodes by
|
|
|
|
the kernel or by users (see the attr(5) manual page, or visit
|
|
|
|
<http://acl.bestbits.at/> for details).
|
|
|
|
|
|
|
|
If unsure, say N.
|
|
|
|
|
|
|
|
config EROFS_FS_POSIX_ACL
|
|
|
|
bool "EROFS Access Control Lists"
|
|
|
|
depends on EROFS_FS_XATTR
|
|
|
|
select FS_POSIX_ACL
|
|
|
|
default y
|
|
|
|
help
|
|
|
|
Posix Access Control Lists (ACLs) support permissions for users and
|
|
|
|
groups beyond the owner/group/world scheme.
|
|
|
|
|
|
|
|
To learn more about Access Control Lists, visit the POSIX ACLs for
|
|
|
|
Linux website <http://acl.bestbits.at/>.
|
|
|
|
|
|
|
|
If you don't know what Access Control Lists are, say N.
|
|
|
|
|
|
|
|
config EROFS_FS_SECURITY
|
|
|
|
bool "EROFS Security Labels"
|
|
|
|
depends on EROFS_FS_XATTR
|
2019-07-31 23:57:52 +08:00
|
|
|
default y
|
2018-07-26 20:21:52 +08:00
|
|
|
help
|
|
|
|
Security labels provide an access control facility to support Linux
|
|
|
|
Security Models (LSMs) accepted by AppArmor, SELinux, Smack and TOMOYO
|
|
|
|
Linux. This option enables an extended attribute handler for file
|
|
|
|
security labels in the erofs filesystem, so that it requires enabling
|
|
|
|
the extended attribute support in advance.
|
|
|
|
|
|
|
|
If you are not using a security module, say N.
|
|
|
|
|
2018-07-26 20:21:58 +08:00
|
|
|
config EROFS_FS_ZIP
|
2019-07-31 23:57:52 +08:00
|
|
|
bool "EROFS Data Compression Support"
|
2018-07-26 20:21:58 +08:00
|
|
|
depends on EROFS_FS
|
2018-11-10 00:07:50 +08:00
|
|
|
select LZ4_DECOMPRESS
|
2019-07-31 23:57:52 +08:00
|
|
|
default y
|
2018-07-26 20:21:58 +08:00
|
|
|
help
|
2019-07-31 23:57:52 +08:00
|
|
|
Enable fixed-sized output compression for EROFS.
|
2018-07-26 20:21:58 +08:00
|
|
|
|
2019-07-31 23:57:52 +08:00
|
|
|
If you don't want to enable compression feature, say N.
|
2021-10-11 05:31:45 +08:00
|
|
|
|
|
|
|
config EROFS_FS_ZIP_LZMA
|
|
|
|
bool "EROFS LZMA compressed data support"
|
|
|
|
depends on EROFS_FS_ZIP
|
|
|
|
select XZ_DEC
|
|
|
|
select XZ_DEC_MICROLZMA
|
|
|
|
help
|
|
|
|
Saying Y here includes support for reading EROFS file systems
|
|
|
|
containing LZMA compressed data, specifically called microLZMA. it
|
|
|
|
gives better compression ratios than the LZ4 algorithm, at the
|
|
|
|
expense of more CPU overhead.
|
|
|
|
|
|
|
|
LZMA support is an experimental feature for now and so most file
|
|
|
|
systems will be readable without selecting this option.
|
|
|
|
|
|
|
|
If unsure, say N.
|
2022-04-25 20:21:33 +08:00
|
|
|
|
|
|
|
config EROFS_FS_ONDEMAND
|
|
|
|
bool "EROFS fscache-based on-demand read support"
|
|
|
|
depends on CACHEFILES_ONDEMAND && (EROFS_FS=m && FSCACHE || EROFS_FS=y && FSCACHE=y)
|
|
|
|
default n
|
|
|
|
help
|
|
|
|
This permits EROFS to use fscache-backed data blobs with on-demand
|
|
|
|
read support.
|
|
|
|
|
|
|
|
If unsure, say N.
|
2023-02-08 17:33:22 +08:00
|
|
|
|
|
|
|
config EROFS_FS_PCPU_KTHREAD
|
|
|
|
bool "EROFS per-cpu decompression kthread workers"
|
|
|
|
depends on EROFS_FS_ZIP
|
|
|
|
help
|
|
|
|
Saying Y here enables per-CPU kthread workers pool to carry out
|
|
|
|
async decompression for low latencies on some architectures.
|
|
|
|
|
|
|
|
If unsure, say N.
|
|
|
|
|
|
|
|
config EROFS_FS_PCPU_KTHREAD_HIPRI
|
|
|
|
bool "EROFS high priority per-CPU kthread workers"
|
|
|
|
depends on EROFS_FS_ZIP && EROFS_FS_PCPU_KTHREAD
|
|
|
|
help
|
|
|
|
This permits EROFS to configure per-CPU kthread workers to run
|
|
|
|
at higher priority.
|
|
|
|
|
|
|
|
If unsure, say N.
|