1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only 2c290ea01SJan Kara# Ext3 configs are here for backward compatibility with old configs which may 3c290ea01SJan Kara# have EXT3_FS set but not EXT4_FS set and thus would result in non-bootable 4c290ea01SJan Kara# kernels after the removal of ext3 driver. 5c290ea01SJan Karaconfig EXT3_FS 6c290ea01SJan Kara tristate "The Extended 3 (ext3) filesystem" 7c290ea01SJan Kara select EXT4_FS 8c290ea01SJan Kara help 9c290ea01SJan Kara This config option is here only for backward compatibility. ext3 10c290ea01SJan Kara filesystem is now handled by the ext4 driver. 11c290ea01SJan Kara 12c290ea01SJan Karaconfig EXT3_FS_POSIX_ACL 13c290ea01SJan Kara bool "Ext3 POSIX Access Control Lists" 14c290ea01SJan Kara depends on EXT3_FS 15c290ea01SJan Kara select EXT4_FS_POSIX_ACL 16c290ea01SJan Kara select FS_POSIX_ACL 17c290ea01SJan Kara help 18c290ea01SJan Kara This config option is here only for backward compatibility. ext3 19c290ea01SJan Kara filesystem is now handled by the ext4 driver. 20c290ea01SJan Kara 21c290ea01SJan Karaconfig EXT3_FS_SECURITY 22c290ea01SJan Kara bool "Ext3 Security Labels" 23c290ea01SJan Kara depends on EXT3_FS 24c290ea01SJan Kara select EXT4_FS_SECURITY 25c290ea01SJan Kara help 26c290ea01SJan Kara This config option is here only for backward compatibility. ext3 27c290ea01SJan Kara filesystem is now handled by the ext4 driver. 28c290ea01SJan Kara 296da0b38fSAlexey Dobriyanconfig EXT4_FS 306da0b38fSAlexey Dobriyan tristate "The Extended 4 (ext4) filesystem" 31925c86a1SChristoph Hellwig select BUFFER_HEAD 326da0b38fSAlexey Dobriyan select JBD2 336da0b38fSAlexey Dobriyan select CRC16 34*f2b4fa19SEric Biggers select CRC32 35545052e9SChristoph Hellwig select FS_IOMAP 36ede7a09fSHerbert Xu select FS_ENCRYPTION_ALGS if FS_ENCRYPTION 376da0b38fSAlexey Dobriyan help 386da0b38fSAlexey Dobriyan This is the next generation of the ext3 filesystem. 396da0b38fSAlexey Dobriyan 406da0b38fSAlexey Dobriyan Unlike the change from ext2 filesystem to ext3 filesystem, 416da0b38fSAlexey Dobriyan the on-disk format of ext4 is not forwards compatible with 426da0b38fSAlexey Dobriyan ext3; it is based on extent maps and it supports 48-bit 436da0b38fSAlexey Dobriyan physical block numbers. The ext4 filesystem also supports delayed 446da0b38fSAlexey Dobriyan allocation, persistent preallocation, high resolution time stamps, 456da0b38fSAlexey Dobriyan and a number of other features to improve performance and speed 466da0b38fSAlexey Dobriyan up fsck time. For more information, please see the web pages at 476da0b38fSAlexey Dobriyan http://ext4.wiki.kernel.org. 486da0b38fSAlexey Dobriyan 49c8962f4bSJan Kara The ext4 filesystem supports mounting an ext3 filesystem; while there 50c8962f4bSJan Kara are some performance gains from the delayed allocation and inode 51c8962f4bSJan Kara table readahead, the best performance gains require enabling ext4 52c8962f4bSJan Kara features in the filesystem using tune2fs, or formatting a new 53c8962f4bSJan Kara filesystem as an ext4 filesystem initially. Without explicit enabling 54c8962f4bSJan Kara of ext4 features, the on disk filesystem format stays fully backward 55c8962f4bSJan Kara compatible. 566da0b38fSAlexey Dobriyan 576da0b38fSAlexey Dobriyan To compile this file system support as a module, choose M here. The 586da0b38fSAlexey Dobriyan module will be called ext4. 596da0b38fSAlexey Dobriyan 606da0b38fSAlexey Dobriyan If unsure, say N. 616da0b38fSAlexey Dobriyan 62c290ea01SJan Karaconfig EXT4_USE_FOR_EXT2 63d4eb6deeSJean Delvare bool "Use ext4 for ext2 file systems" 6484c66473SDavid Howells depends on EXT4_FS 65c290ea01SJan Kara depends on EXT2_FS=n 6624b58424STheodore Ts'o default y 6724b58424STheodore Ts'o help 68c290ea01SJan Kara Allow the ext4 file system driver code to be used for ext2 69c290ea01SJan Kara file system mounts. This allows users to reduce their 7024b58424STheodore Ts'o compiled kernel size by using one file system driver for 7124b58424STheodore Ts'o ext2, ext3, and ext4 file systems. 7224b58424STheodore Ts'o 736da0b38fSAlexey Dobriyanconfig EXT4_FS_POSIX_ACL 746da0b38fSAlexey Dobriyan bool "Ext4 POSIX Access Control Lists" 7596465efeSValerie Aurora depends on EXT4_FS 766da0b38fSAlexey Dobriyan select FS_POSIX_ACL 776da0b38fSAlexey Dobriyan help 786da0b38fSAlexey Dobriyan POSIX Access Control Lists (ACLs) support permissions for users and 796da0b38fSAlexey Dobriyan groups beyond the owner/group/world scheme. 806da0b38fSAlexey Dobriyan 816da0b38fSAlexey Dobriyan If you don't know what Access Control Lists are, say N 826da0b38fSAlexey Dobriyan 836da0b38fSAlexey Dobriyanconfig EXT4_FS_SECURITY 846da0b38fSAlexey Dobriyan bool "Ext4 Security Labels" 8596465efeSValerie Aurora depends on EXT4_FS 866da0b38fSAlexey Dobriyan help 876da0b38fSAlexey Dobriyan Security labels support alternative access control models 886da0b38fSAlexey Dobriyan implemented by security modules like SELinux. This option 896da0b38fSAlexey Dobriyan enables an extended attribute handler for file security 906da0b38fSAlexey Dobriyan labels in the ext4 filesystem. 916da0b38fSAlexey Dobriyan 926da0b38fSAlexey Dobriyan If you are not using a security module that requires using 936da0b38fSAlexey Dobriyan extended attributes for file security labels, say N. 946ba495e9STheodore Ts'o 956ba495e9STheodore Ts'oconfig EXT4_DEBUG 96231fe82bSGeert Uytterhoeven bool "Ext4 debugging support" 976ba495e9STheodore Ts'o depends on EXT4_FS 986ba495e9STheodore Ts'o help 996ba495e9STheodore Ts'o Enables run-time debugging support for the ext4 filesystem. 1006ba495e9STheodore Ts'o 1016ba495e9STheodore Ts'o If you select Y here, then you will be able to turn on debugging 10270aa1554SRitesh Harjani using dynamic debug control for mb_debug() / ext_debug() msgs. 1031cbeab1bSIurii Zaikin 1041cbeab1bSIurii Zaikinconfig EXT4_KUNIT_TESTS 105d194e12bSAnders Roxell tristate "KUnit tests for ext4" if !KUNIT_ALL_TESTS 106302fdadeSGeert Uytterhoeven depends on EXT4_FS && KUNIT 107d194e12bSAnders Roxell default KUNIT_ALL_TESTS 1081cbeab1bSIurii Zaikin help 1091cbeab1bSIurii Zaikin This builds the ext4 KUnit tests. 1101cbeab1bSIurii Zaikin 1111cbeab1bSIurii Zaikin KUnit tests run during boot and output the results to the debug log 112e65bf6e4SAlexander A. Klimov in TAP format (https://testanything.org/). Only useful for kernel devs 1131cbeab1bSIurii Zaikin running KUnit test harness and are not for inclusion into a production 1141cbeab1bSIurii Zaikin build. 1151cbeab1bSIurii Zaikin 1161cbeab1bSIurii Zaikin For more information on KUnit and unit tests in general please refer 1171cbeab1bSIurii Zaikin to the KUnit documentation in Documentation/dev-tools/kunit/. 1181cbeab1bSIurii Zaikin 1191cbeab1bSIurii Zaikin If unsure, say N. 120