mirror of
https://github.com/torvalds/linux.git
synced 2024-11-01 13:03:25 +01:00
925c86a19b
Add a new config option that controls building the buffer_head code, and select it from all file systems and stacking drivers that need it. For the block device nodes and alternative iomap based buffered I/O path is provided when buffer_head support is not enabled, and iomap needs a a small tweak to define the IOMAP_F_BUFFER_HEAD flag to 0 to not call into the buffer_head code when it doesn't exist. Otherwise this is just Kconfig and ifdef changes. Signed-off-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Luis Chamberlain <mcgrof@kernel.org> Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com> Link: https://lore.kernel.org/r/20230801172201.1923299-7-hch@lst.de Signed-off-by: Jens Axboe <axboe@kernel.dk>
120 lines
4 KiB
Text
120 lines
4 KiB
Text
# SPDX-License-Identifier: GPL-2.0-only
|
|
# Ext3 configs are here for backward compatibility with old configs which may
|
|
# have EXT3_FS set but not EXT4_FS set and thus would result in non-bootable
|
|
# kernels after the removal of ext3 driver.
|
|
config EXT3_FS
|
|
tristate "The Extended 3 (ext3) filesystem"
|
|
select EXT4_FS
|
|
help
|
|
This config option is here only for backward compatibility. ext3
|
|
filesystem is now handled by the ext4 driver.
|
|
|
|
config EXT3_FS_POSIX_ACL
|
|
bool "Ext3 POSIX Access Control Lists"
|
|
depends on EXT3_FS
|
|
select EXT4_FS_POSIX_ACL
|
|
select FS_POSIX_ACL
|
|
help
|
|
This config option is here only for backward compatibility. ext3
|
|
filesystem is now handled by the ext4 driver.
|
|
|
|
config EXT3_FS_SECURITY
|
|
bool "Ext3 Security Labels"
|
|
depends on EXT3_FS
|
|
select EXT4_FS_SECURITY
|
|
help
|
|
This config option is here only for backward compatibility. ext3
|
|
filesystem is now handled by the ext4 driver.
|
|
|
|
config EXT4_FS
|
|
tristate "The Extended 4 (ext4) filesystem"
|
|
select BUFFER_HEAD
|
|
select JBD2
|
|
select CRC16
|
|
select CRYPTO
|
|
select CRYPTO_CRC32C
|
|
select FS_IOMAP
|
|
select FS_ENCRYPTION_ALGS if FS_ENCRYPTION
|
|
help
|
|
This is the next generation of the ext3 filesystem.
|
|
|
|
Unlike the change from ext2 filesystem to ext3 filesystem,
|
|
the on-disk format of ext4 is not forwards compatible with
|
|
ext3; it is based on extent maps and it supports 48-bit
|
|
physical block numbers. The ext4 filesystem also supports delayed
|
|
allocation, persistent preallocation, high resolution time stamps,
|
|
and a number of other features to improve performance and speed
|
|
up fsck time. For more information, please see the web pages at
|
|
http://ext4.wiki.kernel.org.
|
|
|
|
The ext4 filesystem supports mounting an ext3 filesystem; while there
|
|
are some performance gains from the delayed allocation and inode
|
|
table readahead, the best performance gains require enabling ext4
|
|
features in the filesystem using tune2fs, or formatting a new
|
|
filesystem as an ext4 filesystem initially. Without explicit enabling
|
|
of ext4 features, the on disk filesystem format stays fully backward
|
|
compatible.
|
|
|
|
To compile this file system support as a module, choose M here. The
|
|
module will be called ext4.
|
|
|
|
If unsure, say N.
|
|
|
|
config EXT4_USE_FOR_EXT2
|
|
bool "Use ext4 for ext2 file systems"
|
|
depends on EXT4_FS
|
|
depends on EXT2_FS=n
|
|
default y
|
|
help
|
|
Allow the ext4 file system driver code to be used for ext2
|
|
file system mounts. This allows users to reduce their
|
|
compiled kernel size by using one file system driver for
|
|
ext2, ext3, and ext4 file systems.
|
|
|
|
config EXT4_FS_POSIX_ACL
|
|
bool "Ext4 POSIX Access Control Lists"
|
|
depends on EXT4_FS
|
|
select FS_POSIX_ACL
|
|
help
|
|
POSIX Access Control Lists (ACLs) support permissions for users and
|
|
groups beyond the owner/group/world scheme.
|
|
|
|
If you don't know what Access Control Lists are, say N
|
|
|
|
config EXT4_FS_SECURITY
|
|
bool "Ext4 Security Labels"
|
|
depends on EXT4_FS
|
|
help
|
|
Security labels support alternative access control models
|
|
implemented by security modules like SELinux. This option
|
|
enables an extended attribute handler for file security
|
|
labels in the ext4 filesystem.
|
|
|
|
If you are not using a security module that requires using
|
|
extended attributes for file security labels, say N.
|
|
|
|
config EXT4_DEBUG
|
|
bool "Ext4 debugging support"
|
|
depends on EXT4_FS
|
|
help
|
|
Enables run-time debugging support for the ext4 filesystem.
|
|
|
|
If you select Y here, then you will be able to turn on debugging
|
|
using dynamic debug control for mb_debug() / ext_debug() msgs.
|
|
|
|
config EXT4_KUNIT_TESTS
|
|
tristate "KUnit tests for ext4" if !KUNIT_ALL_TESTS
|
|
depends on EXT4_FS && KUNIT
|
|
default KUNIT_ALL_TESTS
|
|
help
|
|
This builds the ext4 KUnit tests.
|
|
|
|
KUnit tests run during boot and output the results to the debug log
|
|
in TAP format (https://testanything.org/). Only useful for kernel devs
|
|
running KUnit test harness and are not for inclusion into a production
|
|
build.
|
|
|
|
For more information on KUnit and unit tests in general please refer
|
|
to the KUnit documentation in Documentation/dev-tools/kunit/.
|
|
|
|
If unsure, say N.
|