blob: ef42ab040905731d1d574446c38d23d0fd5e6b6f [file] [log] [blame]
Thomas Gleixnerec8f24b2019-05-19 13:07:45 +01001# SPDX-License-Identifier: GPL-2.0-only
Jan Karac290ea02015-06-18 16:52:29 +02002# Ext3 configs are here for backward compatibility with old configs which may
3# have EXT3_FS set but not EXT4_FS set and thus would result in non-bootable
4# kernels after the removal of ext3 driver.
5config EXT3_FS
6 tristate "The Extended 3 (ext3) filesystem"
7 # These must match EXT4_FS selects...
8 select EXT4_FS
9 select JBD2
10 select CRC16
11 select CRYPTO
12 select CRYPTO_CRC32C
13 help
14 This config option is here only for backward compatibility. ext3
15 filesystem is now handled by the ext4 driver.
16
17config EXT3_FS_POSIX_ACL
18 bool "Ext3 POSIX Access Control Lists"
19 depends on EXT3_FS
20 select EXT4_FS_POSIX_ACL
21 select FS_POSIX_ACL
22 help
23 This config option is here only for backward compatibility. ext3
24 filesystem is now handled by the ext4 driver.
25
26config EXT3_FS_SECURITY
27 bool "Ext3 Security Labels"
28 depends on EXT3_FS
29 select EXT4_FS_SECURITY
30 help
31 This config option is here only for backward compatibility. ext3
32 filesystem is now handled by the ext4 driver.
33
Alexey Dobriyan6da0b382008-10-20 22:28:45 +040034config EXT4_FS
35 tristate "The Extended 4 (ext4) filesystem"
Jan Karac290ea02015-06-18 16:52:29 +020036 # Please update EXT3_FS selects when changing these
Alexey Dobriyan6da0b382008-10-20 22:28:45 +040037 select JBD2
38 select CRC16
Darrick J. Wong04419842012-04-29 18:27:10 -040039 select CRYPTO
40 select CRYPTO_CRC32C
Christoph Hellwig545052e2017-10-01 17:58:54 -040041 select FS_IOMAP
Alexey Dobriyan6da0b382008-10-20 22:28:45 +040042 help
43 This is the next generation of the ext3 filesystem.
44
45 Unlike the change from ext2 filesystem to ext3 filesystem,
46 the on-disk format of ext4 is not forwards compatible with
47 ext3; it is based on extent maps and it supports 48-bit
48 physical block numbers. The ext4 filesystem also supports delayed
49 allocation, persistent preallocation, high resolution time stamps,
50 and a number of other features to improve performance and speed
51 up fsck time. For more information, please see the web pages at
52 http://ext4.wiki.kernel.org.
53
Jan Karac8962f42015-07-16 11:20:02 +020054 The ext4 filesystem supports mounting an ext3 filesystem; while there
55 are some performance gains from the delayed allocation and inode
56 table readahead, the best performance gains require enabling ext4
57 features in the filesystem using tune2fs, or formatting a new
58 filesystem as an ext4 filesystem initially. Without explicit enabling
59 of ext4 features, the on disk filesystem format stays fully backward
60 compatible.
Alexey Dobriyan6da0b382008-10-20 22:28:45 +040061
62 To compile this file system support as a module, choose M here. The
63 module will be called ext4.
64
65 If unsure, say N.
66
Jan Karac290ea02015-06-18 16:52:29 +020067config EXT4_USE_FOR_EXT2
Jean Delvared4eb6de2015-09-24 12:38:22 +020068 bool "Use ext4 for ext2 file systems"
David Howells84c66472009-12-21 10:54:09 -050069 depends on EXT4_FS
Jan Karac290ea02015-06-18 16:52:29 +020070 depends on EXT2_FS=n
Theodore Ts'o24b58422009-12-07 14:08:51 -050071 default y
72 help
Jan Karac290ea02015-06-18 16:52:29 +020073 Allow the ext4 file system driver code to be used for ext2
74 file system mounts. This allows users to reduce their
Theodore Ts'o24b58422009-12-07 14:08:51 -050075 compiled kernel size by using one file system driver for
76 ext2, ext3, and ext4 file systems.
77
Alexey Dobriyan6da0b382008-10-20 22:28:45 +040078config EXT4_FS_POSIX_ACL
79 bool "Ext4 POSIX Access Control Lists"
Valerie Aurora96465ef2013-01-06 23:38:44 -050080 depends on EXT4_FS
Alexey Dobriyan6da0b382008-10-20 22:28:45 +040081 select FS_POSIX_ACL
82 help
83 POSIX Access Control Lists (ACLs) support permissions for users and
84 groups beyond the owner/group/world scheme.
85
Alexey Dobriyan6da0b382008-10-20 22:28:45 +040086 If you don't know what Access Control Lists are, say N
87
88config EXT4_FS_SECURITY
89 bool "Ext4 Security Labels"
Valerie Aurora96465ef2013-01-06 23:38:44 -050090 depends on EXT4_FS
Alexey Dobriyan6da0b382008-10-20 22:28:45 +040091 help
92 Security labels support alternative access control models
93 implemented by security modules like SELinux. This option
94 enables an extended attribute handler for file security
95 labels in the ext4 filesystem.
96
97 If you are not using a security module that requires using
98 extended attributes for file security labels, say N.
Theodore Ts'o6ba495e2009-09-18 13:38:55 -040099
100config EXT4_DEBUG
Geert Uytterhoeven231fe822019-02-21 11:37:28 -0500101 bool "Ext4 debugging support"
Theodore Ts'o6ba495e2009-09-18 13:38:55 -0400102 depends on EXT4_FS
103 help
104 Enables run-time debugging support for the ext4 filesystem.
105
106 If you select Y here, then you will be able to turn on debugging
Theodore Ts'o7f3e3c72013-04-21 20:32:03 -0400107 with a command such as:
108 echo 1 > /sys/module/ext4/parameters/mballoc_debug
Iurii Zaikin1cbeab12019-10-17 15:12:33 -0700109
110config EXT4_KUNIT_TESTS
111 bool "KUnit tests for ext4"
112 select EXT4_FS
113 depends on KUNIT
114 help
115 This builds the ext4 KUnit tests.
116
117 KUnit tests run during boot and output the results to the debug log
118 in TAP format (http://testanything.org/). Only useful for kernel devs
119 running KUnit test harness and are not for inclusion into a production
120 build.
121
122 For more information on KUnit and unit tests in general please refer
123 to the KUnit documentation in Documentation/dev-tools/kunit/.
124
125 If unsure, say N.