1 # SPDX-License-Identifier: GPL-2.0-only
2 # 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.
6 tristate "The Extended 3 (ext3) filesystem"
9 This config option is here only for backward compatibility. ext3
10 filesystem is now handled by the ext4 driver.
12 config EXT3_FS_POSIX_ACL
13 bool "Ext3 POSIX Access Control Lists"
15 select EXT4_FS_POSIX_ACL
18 This config option is here only for backward compatibility. ext3
19 filesystem is now handled by the ext4 driver.
21 config EXT3_FS_SECURITY
22 bool "Ext3 Security Labels"
24 select EXT4_FS_SECURITY
26 This config option is here only for backward compatibility. ext3
27 filesystem is now handled by the ext4 driver.
30 tristate "The Extended 4 (ext4) filesystem"
37 select FS_ENCRYPTION_ALGS if FS_ENCRYPTION
39 This is the next generation of the ext3 filesystem.
41 Unlike the change from ext2 filesystem to ext3 filesystem,
42 the on-disk format of ext4 is not forwards compatible with
43 ext3; it is based on extent maps and it supports 48-bit
44 physical block numbers. The ext4 filesystem also supports delayed
45 allocation, persistent preallocation, high resolution time stamps,
46 and a number of other features to improve performance and speed
47 up fsck time. For more information, please see the web pages at
48 http://ext4.wiki.kernel.org.
50 The ext4 filesystem supports mounting an ext3 filesystem; while there
51 are some performance gains from the delayed allocation and inode
52 table readahead, the best performance gains require enabling ext4
53 features in the filesystem using tune2fs, or formatting a new
54 filesystem as an ext4 filesystem initially. Without explicit enabling
55 of ext4 features, the on disk filesystem format stays fully backward
58 To compile this file system support as a module, choose M here. The
59 module will be called ext4.
63 config EXT4_USE_FOR_EXT2
64 bool "Use ext4 for ext2 file systems"
69 Allow the ext4 file system driver code to be used for ext2
70 file system mounts. This allows users to reduce their
71 compiled kernel size by using one file system driver for
72 ext2, ext3, and ext4 file systems.
74 config EXT4_FS_POSIX_ACL
75 bool "Ext4 POSIX Access Control Lists"
79 POSIX Access Control Lists (ACLs) support permissions for users and
80 groups beyond the owner/group/world scheme.
82 If you don't know what Access Control Lists are, say N
84 config EXT4_FS_SECURITY
85 bool "Ext4 Security Labels"
88 Security labels support alternative access control models
89 implemented by security modules like SELinux. This option
90 enables an extended attribute handler for file security
91 labels in the ext4 filesystem.
93 If you are not using a security module that requires using
94 extended attributes for file security labels, say N.
97 bool "Ext4 debugging support"
100 Enables run-time debugging support for the ext4 filesystem.
102 If you select Y here, then you will be able to turn on debugging
103 using dynamic debug control for mb_debug() / ext_debug() msgs.
105 config EXT4_KUNIT_TESTS
106 tristate "KUnit tests for ext4" if !KUNIT_ALL_TESTS
107 depends on EXT4_FS && KUNIT
108 default KUNIT_ALL_TESTS
110 This builds the ext4 KUnit tests.
112 KUnit tests run during boot and output the results to the debug log
113 in TAP format (https://testanything.org/). Only useful for kernel devs
114 running KUnit test harness and are not for inclusion into a production
117 For more information on KUnit and unit tests in general please refer
118 to the KUnit documentation in Documentation/dev-tools/kunit/.