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"
7 # These must match EXT4_FS selects...
14 This config option is here only for backward compatibility. ext3
15 filesystem is now handled by the ext4 driver.
17 config EXT3_FS_POSIX_ACL
18 bool "Ext3 POSIX Access Control Lists"
20 select EXT4_FS_POSIX_ACL
23 This config option is here only for backward compatibility. ext3
24 filesystem is now handled by the ext4 driver.
26 config EXT3_FS_SECURITY
27 bool "Ext3 Security Labels"
29 select EXT4_FS_SECURITY
31 This config option is here only for backward compatibility. ext3
32 filesystem is now handled by the ext4 driver.
35 tristate "The Extended 4 (ext4) filesystem"
36 # Please update EXT3_FS selects when changing these
42 select FS_ENCRYPTION_ALGS if FS_ENCRYPTION
44 This is the next generation of the ext3 filesystem.
46 Unlike the change from ext2 filesystem to ext3 filesystem,
47 the on-disk format of ext4 is not forwards compatible with
48 ext3; it is based on extent maps and it supports 48-bit
49 physical block numbers. The ext4 filesystem also supports delayed
50 allocation, persistent preallocation, high resolution time stamps,
51 and a number of other features to improve performance and speed
52 up fsck time. For more information, please see the web pages at
53 http://ext4.wiki.kernel.org.
55 The ext4 filesystem supports mounting an ext3 filesystem; while there
56 are some performance gains from the delayed allocation and inode
57 table readahead, the best performance gains require enabling ext4
58 features in the filesystem using tune2fs, or formatting a new
59 filesystem as an ext4 filesystem initially. Without explicit enabling
60 of ext4 features, the on disk filesystem format stays fully backward
63 To compile this file system support as a module, choose M here. The
64 module will be called ext4.
68 config EXT4_USE_FOR_EXT2
69 bool "Use ext4 for ext2 file systems"
74 Allow the ext4 file system driver code to be used for ext2
75 file system mounts. This allows users to reduce their
76 compiled kernel size by using one file system driver for
77 ext2, ext3, and ext4 file systems.
79 config EXT4_FS_POSIX_ACL
80 bool "Ext4 POSIX Access Control Lists"
84 POSIX Access Control Lists (ACLs) support permissions for users and
85 groups beyond the owner/group/world scheme.
87 If you don't know what Access Control Lists are, say N
89 config EXT4_FS_SECURITY
90 bool "Ext4 Security Labels"
93 Security labels support alternative access control models
94 implemented by security modules like SELinux. This option
95 enables an extended attribute handler for file security
96 labels in the ext4 filesystem.
98 If you are not using a security module that requires using
99 extended attributes for file security labels, say N.
102 bool "Ext4 debugging support"
105 Enables run-time debugging support for the ext4 filesystem.
107 If you select Y here, then you will be able to turn on debugging
108 with a command such as:
109 echo 1 > /sys/module/ext4/parameters/mballoc_debug
111 config EXT4_KUNIT_TESTS
112 tristate "KUnit tests for ext4"
116 This builds the ext4 KUnit tests.
118 KUnit tests run during boot and output the results to the debug log
119 in TAP format (http://testanything.org/). Only useful for kernel devs
120 running KUnit test harness and are not for inclusion into a production
123 For more information on KUnit and unit tests in general please refer
124 to the KUnit documentation in Documentation/dev-tools/kunit/.