xref: /openbmc/linux/fs/ext4/Kconfig (revision d4eb6dee)
1c290ea01SJan Kara# Ext3 configs are here for backward compatibility with old configs which may
2c290ea01SJan Kara# have EXT3_FS set but not EXT4_FS set and thus would result in non-bootable
3c290ea01SJan Kara# kernels after the removal of ext3 driver.
4c290ea01SJan Karaconfig EXT3_FS
5c290ea01SJan Kara	tristate "The Extended 3 (ext3) filesystem"
6c290ea01SJan Kara	# These must match EXT4_FS selects...
7c290ea01SJan Kara	select EXT4_FS
8c290ea01SJan Kara	select JBD2
9c290ea01SJan Kara	select CRC16
10c290ea01SJan Kara	select CRYPTO
11c290ea01SJan Kara	select CRYPTO_CRC32C
12c290ea01SJan Kara	help
13c290ea01SJan Kara	  This config option is here only for backward compatibility. ext3
14c290ea01SJan Kara	  filesystem is now handled by the ext4 driver.
15c290ea01SJan Kara
16c290ea01SJan Karaconfig EXT3_FS_POSIX_ACL
17c290ea01SJan Kara	bool "Ext3 POSIX Access Control Lists"
18c290ea01SJan Kara	depends on EXT3_FS
19c290ea01SJan Kara	select EXT4_FS_POSIX_ACL
20c290ea01SJan Kara	select FS_POSIX_ACL
21c290ea01SJan Kara	help
22c290ea01SJan Kara	  This config option is here only for backward compatibility. ext3
23c290ea01SJan Kara	  filesystem is now handled by the ext4 driver.
24c290ea01SJan Kara
25c290ea01SJan Karaconfig EXT3_FS_SECURITY
26c290ea01SJan Kara	bool "Ext3 Security Labels"
27c290ea01SJan Kara	depends on EXT3_FS
28c290ea01SJan Kara	select EXT4_FS_SECURITY
29c290ea01SJan Kara	help
30c290ea01SJan Kara	  This config option is here only for backward compatibility. ext3
31c290ea01SJan Kara	  filesystem is now handled by the ext4 driver.
32c290ea01SJan Kara
336da0b38fSAlexey Dobriyanconfig EXT4_FS
346da0b38fSAlexey Dobriyan	tristate "The Extended 4 (ext4) filesystem"
35c290ea01SJan Kara	# Please update EXT3_FS selects when changing these
366da0b38fSAlexey Dobriyan	select JBD2
376da0b38fSAlexey Dobriyan	select CRC16
380441984aSDarrick J. Wong	select CRYPTO
390441984aSDarrick J. Wong	select CRYPTO_CRC32C
406da0b38fSAlexey Dobriyan	help
416da0b38fSAlexey Dobriyan	  This is the next generation of the ext3 filesystem.
426da0b38fSAlexey Dobriyan
436da0b38fSAlexey Dobriyan	  Unlike the change from ext2 filesystem to ext3 filesystem,
446da0b38fSAlexey Dobriyan	  the on-disk format of ext4 is not forwards compatible with
456da0b38fSAlexey Dobriyan	  ext3; it is based on extent maps and it supports 48-bit
466da0b38fSAlexey Dobriyan	  physical block numbers.  The ext4 filesystem also supports delayed
476da0b38fSAlexey Dobriyan	  allocation, persistent preallocation, high resolution time stamps,
486da0b38fSAlexey Dobriyan	  and a number of other features to improve performance and speed
496da0b38fSAlexey Dobriyan	  up fsck time.  For more information, please see the web pages at
506da0b38fSAlexey Dobriyan	  http://ext4.wiki.kernel.org.
516da0b38fSAlexey Dobriyan
52c8962f4bSJan Kara	  The ext4 filesystem supports mounting an ext3 filesystem; while there
53c8962f4bSJan Kara	  are some performance gains from the delayed allocation and inode
54c8962f4bSJan Kara	  table readahead, the best performance gains require enabling ext4
55c8962f4bSJan Kara	  features in the filesystem using tune2fs, or formatting a new
56c8962f4bSJan Kara	  filesystem as an ext4 filesystem initially. Without explicit enabling
57c8962f4bSJan Kara	  of ext4 features, the on disk filesystem format stays fully backward
58c8962f4bSJan Kara	  compatible.
596da0b38fSAlexey Dobriyan
606da0b38fSAlexey Dobriyan	  To compile this file system support as a module, choose M here. The
616da0b38fSAlexey Dobriyan	  module will be called ext4.
626da0b38fSAlexey Dobriyan
636da0b38fSAlexey Dobriyan	  If unsure, say N.
646da0b38fSAlexey Dobriyan
65c290ea01SJan Karaconfig EXT4_USE_FOR_EXT2
66d4eb6deeSJean Delvare	bool "Use ext4 for ext2 file systems"
6784c66473SDavid Howells	depends on EXT4_FS
68c290ea01SJan Kara	depends on EXT2_FS=n
6924b58424STheodore Ts'o	default y
7024b58424STheodore Ts'o	help
71c290ea01SJan Kara	  Allow the ext4 file system driver code to be used for ext2
72c290ea01SJan Kara	  file system mounts.  This allows users to reduce their
7324b58424STheodore Ts'o	  compiled kernel size by using one file system driver for
7424b58424STheodore Ts'o	  ext2, ext3, and ext4 file systems.
7524b58424STheodore Ts'o
766da0b38fSAlexey Dobriyanconfig EXT4_FS_POSIX_ACL
776da0b38fSAlexey Dobriyan	bool "Ext4 POSIX Access Control Lists"
7896465efeSValerie Aurora	depends on EXT4_FS
796da0b38fSAlexey Dobriyan	select FS_POSIX_ACL
806da0b38fSAlexey Dobriyan	help
816da0b38fSAlexey Dobriyan	  POSIX Access Control Lists (ACLs) support permissions for users and
826da0b38fSAlexey Dobriyan	  groups beyond the owner/group/world scheme.
836da0b38fSAlexey Dobriyan
846da0b38fSAlexey Dobriyan	  To learn more about Access Control Lists, visit the POSIX ACLs for
856da0b38fSAlexey Dobriyan	  Linux website <http://acl.bestbits.at/>.
866da0b38fSAlexey Dobriyan
876da0b38fSAlexey Dobriyan	  If you don't know what Access Control Lists are, say N
886da0b38fSAlexey Dobriyan
896da0b38fSAlexey Dobriyanconfig EXT4_FS_SECURITY
906da0b38fSAlexey Dobriyan	bool "Ext4 Security Labels"
9196465efeSValerie Aurora	depends on EXT4_FS
926da0b38fSAlexey Dobriyan	help
936da0b38fSAlexey Dobriyan	  Security labels support alternative access control models
946da0b38fSAlexey Dobriyan	  implemented by security modules like SELinux.  This option
956da0b38fSAlexey Dobriyan	  enables an extended attribute handler for file security
966da0b38fSAlexey Dobriyan	  labels in the ext4 filesystem.
976da0b38fSAlexey Dobriyan
986da0b38fSAlexey Dobriyan	  If you are not using a security module that requires using
996da0b38fSAlexey Dobriyan	  extended attributes for file security labels, say N.
1006ba495e9STheodore Ts'o
101fb63e548SHerbert Xuconfig EXT4_ENCRYPTION
102fb63e548SHerbert Xu	tristate "Ext4 Encryption"
103b17655fbSTheodore Ts'o	depends on EXT4_FS
104b17655fbSTheodore Ts'o	select CRYPTO_AES
105b17655fbSTheodore Ts'o	select CRYPTO_CBC
106b17655fbSTheodore Ts'o	select CRYPTO_ECB
107b17655fbSTheodore Ts'o	select CRYPTO_XTS
108b17655fbSTheodore Ts'o	select CRYPTO_CTS
10971dea01eSTheodore Ts'o	select CRYPTO_CTR
110b17655fbSTheodore Ts'o	select CRYPTO_SHA256
111b17655fbSTheodore Ts'o	select KEYS
112b17655fbSTheodore Ts'o	select ENCRYPTED_KEYS
113b17655fbSTheodore Ts'o	help
114b17655fbSTheodore Ts'o	  Enable encryption of ext4 files and directories.  This
115b17655fbSTheodore Ts'o	  feature is similar to ecryptfs, but it is more memory
116b17655fbSTheodore Ts'o	  efficient since it avoids caching the encrypted and
117b17655fbSTheodore Ts'o	  decrypted pages in the page cache.
118b17655fbSTheodore Ts'o
119fb63e548SHerbert Xuconfig EXT4_FS_ENCRYPTION
120fb63e548SHerbert Xu	bool
121fb63e548SHerbert Xu	default y
122fb63e548SHerbert Xu	depends on EXT4_ENCRYPTION
123fb63e548SHerbert Xu
1246ba495e9STheodore Ts'oconfig EXT4_DEBUG
1256ba495e9STheodore Ts'o	bool "EXT4 debugging support"
1266ba495e9STheodore Ts'o	depends on EXT4_FS
1276ba495e9STheodore Ts'o	help
1286ba495e9STheodore Ts'o	  Enables run-time debugging support for the ext4 filesystem.
1296ba495e9STheodore Ts'o
1306ba495e9STheodore Ts'o	  If you select Y here, then you will be able to turn on debugging
1317f3e3c7cSTheodore Ts'o	  with a command such as:
1327f3e3c7cSTheodore Ts'o		echo 1 > /sys/module/ext4/parameters/mballoc_debug
133