xref: /openbmc/linux/fs/erofs/Kconfig (revision 47e4937a)
1# SPDX-License-Identifier: GPL-2.0-only
2
3config EROFS_FS
4	tristate "EROFS filesystem support"
5	depends on BLOCK
6	help
7	  EROFS (Enhanced Read-Only File System) is a lightweight
8	  read-only file system with modern designs (eg. page-sized
9	  blocks, inline xattrs/data, etc.) for scenarios which need
10	  high-performance read-only requirements, e.g. Android OS
11	  for mobile phones and LIVECDs.
12
13	  It also provides fixed-sized output compression support,
14	  which improves storage density, keeps relatively higher
15	  compression ratios, which is more useful to achieve high
16	  performance for embedded devices with limited memory.
17
18	  If unsure, say N.
19
20config EROFS_FS_DEBUG
21	bool "EROFS debugging feature"
22	depends on EROFS_FS
23	help
24	  Print debugging messages and enable more BUG_ONs which check
25	  filesystem consistency and find potential issues aggressively,
26	  which can be used for Android eng build, for example.
27
28	  For daily use, say N.
29
30config EROFS_FAULT_INJECTION
31	bool "EROFS fault injection facility"
32	depends on EROFS_FS
33	help
34	  Test EROFS to inject faults such as ENOMEM, EIO, and so on.
35	  If unsure, say N.
36
37config EROFS_FS_XATTR
38	bool "EROFS extended attributes"
39	depends on EROFS_FS
40	default y
41	help
42	  Extended attributes are name:value pairs associated with inodes by
43	  the kernel or by users (see the attr(5) manual page, or visit
44	  <http://acl.bestbits.at/> for details).
45
46	  If unsure, say N.
47
48config EROFS_FS_POSIX_ACL
49	bool "EROFS Access Control Lists"
50	depends on EROFS_FS_XATTR
51	select FS_POSIX_ACL
52	default y
53	help
54	  Posix Access Control Lists (ACLs) support permissions for users and
55	  groups beyond the owner/group/world scheme.
56
57	  To learn more about Access Control Lists, visit the POSIX ACLs for
58	  Linux website <http://acl.bestbits.at/>.
59
60	  If you don't know what Access Control Lists are, say N.
61
62config EROFS_FS_SECURITY
63	bool "EROFS Security Labels"
64	depends on EROFS_FS_XATTR
65	default y
66	help
67	  Security labels provide an access control facility to support Linux
68	  Security Models (LSMs) accepted by AppArmor, SELinux, Smack and TOMOYO
69	  Linux. This option enables an extended attribute handler for file
70	  security labels in the erofs filesystem, so that it requires enabling
71	  the extended attribute support in advance.
72
73	  If you are not using a security module, say N.
74
75config EROFS_FS_ZIP
76	bool "EROFS Data Compression Support"
77	depends on EROFS_FS
78	select LZ4_DECOMPRESS
79	default y
80	help
81	  Enable fixed-sized output compression for EROFS.
82
83	  If you don't want to enable compression feature, say N.
84
85config EROFS_FS_CLUSTER_PAGE_LIMIT
86	int "EROFS Cluster Pages Hard Limit"
87	depends on EROFS_FS_ZIP
88	range 1 256
89	default "1"
90	help
91	  Indicates maximum # of pages of a compressed
92	  physical cluster.
93
94	  For example, if files in a image were compressed
95	  into 8k-unit, hard limit should not be configured
96	  less than 2. Otherwise, the image will be refused
97	  to mount on this kernel.
98
99