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. 5config EXT3_FS 6 tristate "The Extended 3 (ext3) filesystem" 7 select EXT4_FS 8 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 29config EXT4_FS 30 tristate "The Extended 4 (ext4) filesystem" 31 select JBD2 32 select CRC16 33 select CRYPTO 34 select CRYPTO_CRC32C 35 select FS_IOMAP 36 select FS_ENCRYPTION_ALGS if FS_ENCRYPTION 37 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 49 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. 56 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 62config EXT4_USE_FOR_EXT2 63 bool "Use ext4 for ext2 file systems" 64 depends on EXT4_FS 65 depends on EXT2_FS=n 66 default y 67 help 68 Allow the ext4 file system driver code to be used for ext2 69 file system mounts. This allows users to reduce their 70 compiled kernel size by using one file system driver for 71 ext2, ext3, and ext4 file systems. 72 73config EXT4_FS_POSIX_ACL 74 bool "Ext4 POSIX Access Control Lists" 75 depends on EXT4_FS 76 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 81 If you don't know what Access Control Lists are, say N 82 83config EXT4_FS_SECURITY 84 bool "Ext4 Security Labels" 85 depends on EXT4_FS 86 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. 94 95config EXT4_DEBUG 96 bool "Ext4 debugging support" 97 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 102 using dynamic debug control for mb_debug() / ext_debug() msgs. 103 104config EXT4_KUNIT_TESTS 105 tristate "KUnit tests for ext4" if !KUNIT_ALL_TESTS 106 select EXT4_FS 107 depends on KUNIT 108 default KUNIT_ALL_TESTS 109 help 110 This builds the ext4 KUnit tests. 111 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 115 build. 116 117 For more information on KUnit and unit tests in general please refer 118 to the KUnit documentation in Documentation/dev-tools/kunit/. 119 120 If unsure, say N. 121