1config EXT4_FS
2	tristate "The Extended 4 (ext4) filesystem"
3	select JBD2
4	select CRC16
5	select CRYPTO
6	select CRYPTO_CRC32C
7	help
8	  This is the next generation of the ext3 filesystem.
9
10	  Unlike the change from ext2 filesystem to ext3 filesystem,
11	  the on-disk format of ext4 is not forwards compatible with
12	  ext3; it is based on extent maps and it supports 48-bit
13	  physical block numbers.  The ext4 filesystem also supports delayed
14	  allocation, persistent preallocation, high resolution time stamps,
15	  and a number of other features to improve performance and speed
16	  up fsck time.  For more information, please see the web pages at
17	  http://ext4.wiki.kernel.org.
18
19	  The ext4 filesystem will support mounting an ext3
20	  filesystem; while there will be some performance gains from
21	  the delayed allocation and inode table readahead, the best
22	  performance gains will require enabling ext4 features in the
23	  filesystem, or formatting a new filesystem as an ext4
24	  filesystem initially.
25
26	  To compile this file system support as a module, choose M here. The
27	  module will be called ext4.
28
29	  If unsure, say N.
30
31config EXT4_USE_FOR_EXT23
32	bool "Use ext4 for ext2/ext3 file systems"
33	depends on EXT4_FS
34	depends on EXT3_FS=n || EXT2_FS=n
35	default y
36	help
37	  Allow the ext4 file system driver code to be used for ext2 or
38	  ext3 file system mounts.  This allows users to reduce their
39	  compiled kernel size by using one file system driver for
40	  ext2, ext3, and ext4 file systems.
41
42config EXT4_FS_POSIX_ACL
43	bool "Ext4 POSIX Access Control Lists"
44	depends on EXT4_FS
45	select FS_POSIX_ACL
46	help
47	  POSIX Access Control Lists (ACLs) support permissions for users and
48	  groups beyond the owner/group/world scheme.
49
50	  To learn more about Access Control Lists, visit the POSIX ACLs for
51	  Linux website <http://acl.bestbits.at/>.
52
53	  If you don't know what Access Control Lists are, say N
54
55config EXT4_FS_SECURITY
56	bool "Ext4 Security Labels"
57	depends on EXT4_FS
58	help
59	  Security labels support alternative access control models
60	  implemented by security modules like SELinux.  This option
61	  enables an extended attribute handler for file security
62	  labels in the ext4 filesystem.
63
64	  If you are not using a security module that requires using
65	  extended attributes for file security labels, say N.
66
67config EXT4_ENCRYPTION
68	tristate "Ext4 Encryption"
69	depends on EXT4_FS
70	select CRYPTO_AES
71	select CRYPTO_CBC
72	select CRYPTO_ECB
73	select CRYPTO_XTS
74	select CRYPTO_CTS
75	select CRYPTO_SHA256
76	select KEYS
77	select ENCRYPTED_KEYS
78	help
79	  Enable encryption of ext4 files and directories.  This
80	  feature is similar to ecryptfs, but it is more memory
81	  efficient since it avoids caching the encrypted and
82	  decrypted pages in the page cache.
83
84config EXT4_FS_ENCRYPTION
85	bool
86	default y
87	depends on EXT4_ENCRYPTION
88
89config EXT4_DEBUG
90	bool "EXT4 debugging support"
91	depends on EXT4_FS
92	help
93	  Enables run-time debugging support for the ext4 filesystem.
94
95	  If you select Y here, then you will be able to turn on debugging
96	  with a command such as:
97		echo 1 > /sys/module/ext4/parameters/mballoc_debug
98