blob: 86699c8cab281cbc2960f7433980d14af06f156d [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"
Jan Karac290ea02015-06-18 16:52:29 +02007 select EXT4_FS
Jan Karac290ea02015-06-18 16:52:29 +02008 help
9 This config option is here only for backward compatibility. ext3
10 filesystem is now handled by the ext4 driver.
11
12config EXT3_FS_POSIX_ACL
13 bool "Ext3 POSIX Access Control Lists"
14 depends on EXT3_FS
15 select EXT4_FS_POSIX_ACL
16 select FS_POSIX_ACL
17 help
18 This config option is here only for backward compatibility. ext3
19 filesystem is now handled by the ext4 driver.
20
21config EXT3_FS_SECURITY
22 bool "Ext3 Security Labels"
23 depends on EXT3_FS
24 select EXT4_FS_SECURITY
25 help
26 This config option is here only for backward compatibility. ext3
27 filesystem is now handled by the ext4 driver.
28
Alexey Dobriyan6da0b382008-10-20 22:28:45 +040029config EXT4_FS
30 tristate "The Extended 4 (ext4) filesystem"
31 select JBD2
32 select CRC16
Darrick J. Wong04419842012-04-29 18:27:10 -040033 select CRYPTO
34 select CRYPTO_CRC32C
Christoph Hellwig545052e2017-10-01 17:58:54 -040035 select FS_IOMAP
Herbert Xuede7a092019-12-27 10:47:00 +080036 select FS_ENCRYPTION_ALGS if FS_ENCRYPTION
Alexey Dobriyan6da0b382008-10-20 22:28:45 +040037 help
38 This is the next generation of the ext3 filesystem.
39
40 Unlike the change from ext2 filesystem to ext3 filesystem,
41 the on-disk format of ext4 is not forwards compatible with
42 ext3; it is based on extent maps and it supports 48-bit
43 physical block numbers. The ext4 filesystem also supports delayed
44 allocation, persistent preallocation, high resolution time stamps,
45 and a number of other features to improve performance and speed
46 up fsck time. For more information, please see the web pages at
47 http://ext4.wiki.kernel.org.
48
Jan Karac8962f42015-07-16 11:20:02 +020049 The ext4 filesystem supports mounting an ext3 filesystem; while there
50 are some performance gains from the delayed allocation and inode
51 table readahead, the best performance gains require enabling ext4
52 features in the filesystem using tune2fs, or formatting a new
53 filesystem as an ext4 filesystem initially. Without explicit enabling
54 of ext4 features, the on disk filesystem format stays fully backward
55 compatible.
Alexey Dobriyan6da0b382008-10-20 22:28:45 +040056
57 To compile this file system support as a module, choose M here. The
58 module will be called ext4.
59
60 If unsure, say N.
61
Jan Karac290ea02015-06-18 16:52:29 +020062config EXT4_USE_FOR_EXT2
Jean Delvared4eb6de2015-09-24 12:38:22 +020063 bool "Use ext4 for ext2 file systems"
David Howells84c66472009-12-21 10:54:09 -050064 depends on EXT4_FS
Jan Karac290ea02015-06-18 16:52:29 +020065 depends on EXT2_FS=n
Theodore Ts'o24b58422009-12-07 14:08:51 -050066 default y
67 help
Jan Karac290ea02015-06-18 16:52:29 +020068 Allow the ext4 file system driver code to be used for ext2
69 file system mounts. This allows users to reduce their
Theodore Ts'o24b58422009-12-07 14:08:51 -050070 compiled kernel size by using one file system driver for
71 ext2, ext3, and ext4 file systems.
72
Alexey Dobriyan6da0b382008-10-20 22:28:45 +040073config EXT4_FS_POSIX_ACL
74 bool "Ext4 POSIX Access Control Lists"
Valerie Aurora96465ef2013-01-06 23:38:44 -050075 depends on EXT4_FS
Alexey Dobriyan6da0b382008-10-20 22:28:45 +040076 select FS_POSIX_ACL
77 help
78 POSIX Access Control Lists (ACLs) support permissions for users and
79 groups beyond the owner/group/world scheme.
80
Alexey Dobriyan6da0b382008-10-20 22:28:45 +040081 If you don't know what Access Control Lists are, say N
82
83config EXT4_FS_SECURITY
84 bool "Ext4 Security Labels"
Valerie Aurora96465ef2013-01-06 23:38:44 -050085 depends on EXT4_FS
Alexey Dobriyan6da0b382008-10-20 22:28:45 +040086 help
87 Security labels support alternative access control models
88 implemented by security modules like SELinux. This option
89 enables an extended attribute handler for file security
90 labels in the ext4 filesystem.
91
92 If you are not using a security module that requires using
93 extended attributes for file security labels, say N.
Theodore Ts'o6ba495e2009-09-18 13:38:55 -040094
95config EXT4_DEBUG
Geert Uytterhoeven231fe822019-02-21 11:37:28 -050096 bool "Ext4 debugging support"
Theodore Ts'o6ba495e2009-09-18 13:38:55 -040097 depends on EXT4_FS
98 help
99 Enables run-time debugging support for the ext4 filesystem.
100
101 If you select Y here, then you will be able to turn on debugging
Ritesh Harjani70aa1552020-05-10 11:54:55 +0530102 using dynamic debug control for mb_debug() / ext_debug() msgs.
Iurii Zaikin1cbeab12019-10-17 15:12:33 -0700103
104config EXT4_KUNIT_TESTS
Anders Roxelld194e122020-05-11 15:14:38 +0200105 tristate "KUnit tests for ext4" if !KUNIT_ALL_TESTS
Geert Uytterhoeven302fdad2021-01-22 12:02:34 +0100106 depends on EXT4_FS && KUNIT
Anders Roxelld194e122020-05-11 15:14:38 +0200107 default KUNIT_ALL_TESTS
Iurii Zaikin1cbeab12019-10-17 15:12:33 -0700108 help
109 This builds the ext4 KUnit tests.
110
111 KUnit tests run during boot and output the results to the debug log
Alexander A. Klimove65bf6e2020-07-06 21:03:39 +0200112 in TAP format (https://testanything.org/). Only useful for kernel devs
Iurii Zaikin1cbeab12019-10-17 15:12:33 -0700113 running KUnit test harness and are not for inclusion into a production
114 build.
115
116 For more information on KUnit and unit tests in general please refer
117 to the KUnit documentation in Documentation/dev-tools/kunit/.
118
119 If unsure, say N.