6affb9d7b1
As reported by Arnd: https://lkml.org/lkml/2017/1/10/756 Compiling with the following configuration: # CONFIG_EXT2_FS is not set # CONFIG_EXT4_FS is not set # CONFIG_XFS_FS is not set # CONFIG_FS_IOMAP depends on the above filesystems, as is not set CONFIG_FS_DAX=y generates build warnings about unused functions in fs/dax.c: fs/dax.c:878:12: warning: `dax_insert_mapping' defined but not used [-Wunused-function] static int dax_insert_mapping(struct address_space *mapping, ^~~~~~~~~~~~~~~~~~ fs/dax.c:572:12: warning: `copy_user_dax' defined but not used [-Wunused-function] static int copy_user_dax(struct block_device *bdev, sector_t sector, size_t size, ^~~~~~~~~~~~~ fs/dax.c:542:12: warning: `dax_load_hole' defined but not used [-Wunused-function] static int dax_load_hole(struct address_space *mapping, void **entry, ^~~~~~~~~~~~~ fs/dax.c:312:14: warning: `grab_mapping_entry' defined but not used [-Wunused-function] static void *grab_mapping_entry(struct address_space *mapping, pgoff_t index, ^~~~~~~~~~~~~~~~~~ Now that the struct buffer_head based DAX fault paths and I/O path have been removed we really depend on iomap support being present for DAX. Make this explicit by selecting FS_IOMAP if we compile in DAX support. This allows us to remove conditional selections of FS_IOMAP when FS_DAX was present for ext2 and ext4, and to remove an #ifdef in fs/dax.c. Link: http://lkml.kernel.org/r/1484087383-29478-1-git-send-email-ross.zwisler@linux.intel.com Signed-off-by: Ross Zwisler <ross.zwisler@linux.intel.com> Reported-by: Arnd Bergmann <arnd@arndb.de> Reviewed-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Jan Kara <jack@suse.cz> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
125 lines
4.0 KiB
Plaintext
125 lines
4.0 KiB
Plaintext
# 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"
|
|
# These must match EXT4_FS selects...
|
|
select EXT4_FS
|
|
select JBD2
|
|
select CRC16
|
|
select CRYPTO
|
|
select CRYPTO_CRC32C
|
|
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"
|
|
# Please update EXT3_FS selects when changing these
|
|
select JBD2
|
|
select CRC16
|
|
select CRYPTO
|
|
select CRYPTO_CRC32C
|
|
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.
|
|
|
|
To learn more about Access Control Lists, visit the POSIX ACLs for
|
|
Linux website <http://acl.bestbits.at/>.
|
|
|
|
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_ENCRYPTION
|
|
bool "Ext4 Encryption"
|
|
depends on EXT4_FS
|
|
select FS_ENCRYPTION
|
|
help
|
|
Enable encryption of ext4 files and directories. This
|
|
feature is similar to ecryptfs, but it is more memory
|
|
efficient since it avoids caching the encrypted and
|
|
decrypted pages in the page cache.
|
|
|
|
config EXT4_FS_ENCRYPTION
|
|
bool
|
|
default y
|
|
depends on EXT4_ENCRYPTION
|
|
|
|
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
|
|
with a command such as:
|
|
echo 1 > /sys/module/ext4/parameters/mballoc_debug
|