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