1# SPDX-License-Identifier: GPL-2.0-only 2config EXT4_FS 3 tristate "The Extended 4 (ext4) filesystem" 4 select BUFFER_HEAD 5 select JBD2 6 select CRC16 7 select CRC32 8 select FS_IOMAP 9 select FS_ENCRYPTION_ALGS if FS_ENCRYPTION 10 help 11 This is the next generation of the ext3 filesystem. 12 13 Unlike the change from ext2 filesystem to ext3 filesystem, 14 the on-disk format of ext4 is not forwards compatible with 15 ext3; it is based on extent maps and it supports 48-bit 16 physical block numbers. The ext4 filesystem also supports delayed 17 allocation, persistent preallocation, high resolution time stamps, 18 and a number of other features to improve performance and speed 19 up fsck time. For more information, please see the web pages at 20 http://ext4.wiki.kernel.org. 21 22 The ext4 filesystem supports mounting an ext3 filesystem; while there 23 are some performance gains from the delayed allocation and inode 24 table readahead, the best performance gains require enabling ext4 25 features in the filesystem using tune2fs, or formatting a new 26 filesystem as an ext4 filesystem initially. Without explicit enabling 27 of ext4 features, the on disk filesystem format stays fully backward 28 compatible. 29 30 To compile this file system support as a module, choose M here. The 31 module will be called ext4. 32 33 If unsure, say N. 34 35config EXT4_USE_FOR_EXT2 36 bool "Use ext4 for ext2 file systems" 37 depends on EXT4_FS 38 depends on EXT2_FS=n 39 default y 40 help 41 Allow the ext4 file system driver code to be used for ext2 42 file system mounts. This allows users to reduce their 43 compiled kernel size by using one file system driver for 44 ext2, ext3, and ext4 file systems. 45 46config EXT4_FS_POSIX_ACL 47 bool "Ext4 POSIX Access Control Lists" 48 depends on EXT4_FS 49 select FS_POSIX_ACL 50 help 51 POSIX Access Control Lists (ACLs) support permissions for users and 52 groups beyond the owner/group/world scheme. 53 54 If you don't know what Access Control Lists are, say N 55 56config EXT4_FS_SECURITY 57 bool "Ext4 Security Labels" 58 depends on EXT4_FS 59 help 60 Security labels support alternative access control models 61 implemented by security modules like SELinux. This option 62 enables an extended attribute handler for file security 63 labels in the ext4 filesystem. 64 65 If you are not using a security module that requires using 66 extended attributes for file security labels, say N. 67 68config EXT4_DEBUG 69 bool "Ext4 debugging support" 70 depends on EXT4_FS 71 help 72 Enables run-time debugging support for the ext4 filesystem. 73 74 If you select Y here, then you will be able to turn on debugging 75 using dynamic debug control for mb_debug() / ext_debug() msgs. 76 77config EXT4_KUNIT_TESTS 78 tristate "KUnit tests for ext4" if !KUNIT_ALL_TESTS 79 depends on EXT4_FS && KUNIT 80 default KUNIT_ALL_TESTS 81 help 82 This builds the ext4 KUnit tests. 83 84 KUnit tests run during boot and output the results to the debug log 85 in TAP format (https://testanything.org/). Only useful for kernel devs 86 running KUnit test harness and are not for inclusion into a production 87 build. 88 89 For more information on KUnit and unit tests in general please refer 90 to the KUnit documentation in Documentation/dev-tools/kunit/. 91 92 If unsure, say N. 93