xref: /openbmc/linux/fs/erofs/Kconfig (revision 47e4937a)
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
647e4937aSGao Xiang	help
747e4937aSGao Xiang	  EROFS (Enhanced Read-Only File System) is a lightweight
847e4937aSGao Xiang	  read-only file system with modern designs (eg. page-sized
947e4937aSGao Xiang	  blocks, inline xattrs/data, etc.) for scenarios which need
1047e4937aSGao Xiang	  high-performance read-only requirements, e.g. Android OS
1147e4937aSGao Xiang	  for mobile phones and LIVECDs.
1247e4937aSGao Xiang
1347e4937aSGao Xiang	  It also provides fixed-sized output compression support,
1447e4937aSGao Xiang	  which improves storage density, keeps relatively higher
1547e4937aSGao Xiang	  compression ratios, which is more useful to achieve high
1647e4937aSGao Xiang	  performance for embedded devices with limited memory.
1747e4937aSGao Xiang
1847e4937aSGao Xiang	  If unsure, say N.
1947e4937aSGao Xiang
2047e4937aSGao Xiangconfig EROFS_FS_DEBUG
2147e4937aSGao Xiang	bool "EROFS debugging feature"
2247e4937aSGao Xiang	depends on EROFS_FS
2347e4937aSGao Xiang	help
2447e4937aSGao Xiang	  Print debugging messages and enable more BUG_ONs which check
2547e4937aSGao Xiang	  filesystem consistency and find potential issues aggressively,
2647e4937aSGao Xiang	  which can be used for Android eng build, for example.
2747e4937aSGao Xiang
2847e4937aSGao Xiang	  For daily use, say N.
2947e4937aSGao Xiang
3047e4937aSGao Xiangconfig EROFS_FAULT_INJECTION
3147e4937aSGao Xiang	bool "EROFS fault injection facility"
3247e4937aSGao Xiang	depends on EROFS_FS
3347e4937aSGao Xiang	help
3447e4937aSGao Xiang	  Test EROFS to inject faults such as ENOMEM, EIO, and so on.
3547e4937aSGao Xiang	  If unsure, say N.
3647e4937aSGao Xiang
3747e4937aSGao Xiangconfig EROFS_FS_XATTR
3847e4937aSGao Xiang	bool "EROFS extended attributes"
3947e4937aSGao Xiang	depends on EROFS_FS
4047e4937aSGao Xiang	default y
4147e4937aSGao Xiang	help
4247e4937aSGao Xiang	  Extended attributes are name:value pairs associated with inodes by
4347e4937aSGao Xiang	  the kernel or by users (see the attr(5) manual page, or visit
4447e4937aSGao Xiang	  <http://acl.bestbits.at/> for details).
4547e4937aSGao Xiang
4647e4937aSGao Xiang	  If unsure, say N.
4747e4937aSGao Xiang
4847e4937aSGao Xiangconfig EROFS_FS_POSIX_ACL
4947e4937aSGao Xiang	bool "EROFS Access Control Lists"
5047e4937aSGao Xiang	depends on EROFS_FS_XATTR
5147e4937aSGao Xiang	select FS_POSIX_ACL
5247e4937aSGao Xiang	default y
5347e4937aSGao Xiang	help
5447e4937aSGao Xiang	  Posix Access Control Lists (ACLs) support permissions for users and
5547e4937aSGao Xiang	  groups beyond the owner/group/world scheme.
5647e4937aSGao Xiang
5747e4937aSGao Xiang	  To learn more about Access Control Lists, visit the POSIX ACLs for
5847e4937aSGao Xiang	  Linux website <http://acl.bestbits.at/>.
5947e4937aSGao Xiang
6047e4937aSGao Xiang	  If you don't know what Access Control Lists are, say N.
6147e4937aSGao Xiang
6247e4937aSGao Xiangconfig EROFS_FS_SECURITY
6347e4937aSGao Xiang	bool "EROFS Security Labels"
6447e4937aSGao Xiang	depends on EROFS_FS_XATTR
6547e4937aSGao Xiang	default y
6647e4937aSGao Xiang	help
6747e4937aSGao Xiang	  Security labels provide an access control facility to support Linux
6847e4937aSGao Xiang	  Security Models (LSMs) accepted by AppArmor, SELinux, Smack and TOMOYO
6947e4937aSGao Xiang	  Linux. This option enables an extended attribute handler for file
7047e4937aSGao Xiang	  security labels in the erofs filesystem, so that it requires enabling
7147e4937aSGao Xiang	  the extended attribute support in advance.
7247e4937aSGao Xiang
7347e4937aSGao Xiang	  If you are not using a security module, say N.
7447e4937aSGao Xiang
7547e4937aSGao Xiangconfig EROFS_FS_ZIP
7647e4937aSGao Xiang	bool "EROFS Data Compression Support"
7747e4937aSGao Xiang	depends on EROFS_FS
7847e4937aSGao Xiang	select LZ4_DECOMPRESS
7947e4937aSGao Xiang	default y
8047e4937aSGao Xiang	help
8147e4937aSGao Xiang	  Enable fixed-sized output compression for EROFS.
8247e4937aSGao Xiang
8347e4937aSGao Xiang	  If you don't want to enable compression feature, say N.
8447e4937aSGao Xiang
8547e4937aSGao Xiangconfig EROFS_FS_CLUSTER_PAGE_LIMIT
8647e4937aSGao Xiang	int "EROFS Cluster Pages Hard Limit"
8747e4937aSGao Xiang	depends on EROFS_FS_ZIP
8847e4937aSGao Xiang	range 1 256
8947e4937aSGao Xiang	default "1"
9047e4937aSGao Xiang	help
9147e4937aSGao Xiang	  Indicates maximum # of pages of a compressed
9247e4937aSGao Xiang	  physical cluster.
9347e4937aSGao Xiang
9447e4937aSGao Xiang	  For example, if files in a image were compressed
9547e4937aSGao Xiang	  into 8k-unit, hard limit should not be configured
9647e4937aSGao Xiang	  less than 2. Otherwise, the image will be refused
9747e4937aSGao Xiang	  to mount on this kernel.
9847e4937aSGao Xiang
99