^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) # SPDX-License-Identifier: GPL-2.0-only
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2) #
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3) # File system configuration
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4) #
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6) menu "File systems"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8) # Use unaligned word dcache accesses
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9) config DCACHE_WORD_ACCESS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) bool
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) config VALIDATE_FS_PARSER
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) bool "Validate filesystem parameter description"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) Enable this to perform validation of the parameter description for a
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) filesystem when it is registered.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) if BLOCK
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) config FS_IOMAP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) bool
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) source "fs/ext2/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) source "fs/ext4/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) source "fs/jbd2/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) config FS_MBCACHE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) # Meta block cache for Extended Attributes (ext2/ext3/ext4)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29) tristate
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) default y if EXT2_FS=y && EXT2_FS_XATTR
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31) default y if EXT4_FS=y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32) default m if EXT2_FS_XATTR || EXT4_FS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34) source "fs/reiserfs/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35) source "fs/jfs/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37) source "fs/xfs/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38) source "fs/gfs2/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39) source "fs/ocfs2/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40) source "fs/btrfs/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41) source "fs/nilfs2/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42) source "fs/f2fs/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43) source "fs/zonefs/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45) config FS_DAX
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46) bool "Direct Access (DAX) support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47) depends on MMU
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48) depends on !(ARM || MIPS || SPARC) || (ROCKCHIP_RAMDISK && ARM)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49) select DEV_PAGEMAP_OPS if (ZONE_DEVICE && !FS_DAX_LIMITED)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50) select FS_IOMAP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 51) select DAX
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 52) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 53) Direct Access (DAX) can be used on memory-backed block devices.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 54) If the block device supports DAX and the filesystem supports DAX,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 55) then you can avoid using the pagecache to buffer I/Os. Turning
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 56) on this option will compile in support for DAX; you will need to
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 57) mount the filesystem using the -o dax option.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 58)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 59) If you do not have a block device that is capable of using this,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 60) or if unsure, say N. Saying Y will increase the size of the kernel
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 61) by about 5kB.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 62)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 63) config FS_DAX_PMD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 64) bool
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 65) default FS_DAX
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 66) depends on FS_DAX
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 67) depends on ZONE_DEVICE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 68) depends on TRANSPARENT_HUGEPAGE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 69)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 70) # Selected by DAX drivers that do not expect filesystem DAX to support
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 71) # get_user_pages() of DAX mappings. I.e. "limited" indicates no support
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 72) # for fork() of processes with MAP_SHARED mappings or support for
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 73) # direct-I/O to a DAX mapping.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 74) config FS_DAX_LIMITED
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 75) bool
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 76)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 77) endif # BLOCK
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 78)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 79) # Posix ACL utility routines
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 80) #
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 81) # Note: Posix ACLs can be implemented without these helpers. Never use
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 82) # this symbol for ifdefs in core code.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 83) #
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 84) config FS_POSIX_ACL
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 85) def_bool n
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 86)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 87) config EXPORTFS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 88) tristate
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 89)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 90) config EXPORTFS_BLOCK_OPS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 91) bool "Enable filesystem export operations for block IO"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 92) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 93) This option enables the export operations for a filesystem to support
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 94) external block IO.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 95)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 96) config FILE_LOCKING
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 97) bool "Enable POSIX file locking API" if EXPERT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 98) default y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 99) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 100) This option enables standard file locking support, required
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 101) for filesystems like NFS and for the flock() system
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 102) call. Disabling this option saves about 11k.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 103)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 104) config MANDATORY_FILE_LOCKING
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 105) bool "Enable Mandatory file locking"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 106) depends on FILE_LOCKING
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 107) default y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 108) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 109) This option enables files appropriately marked files on appropriely
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 110) mounted filesystems to support mandatory locking.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 111)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 112) To the best of my knowledge this is dead code that no one cares about.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 113)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 114) source "fs/crypto/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 115)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 116) source "fs/verity/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 117)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 118) source "fs/notify/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 119)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 120) source "fs/quota/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 121)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 122) source "fs/autofs/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 123) source "fs/fuse/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 124) source "fs/overlayfs/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 125) source "fs/incfs/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 126)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 127) menu "Caches"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 128)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 129) source "fs/fscache/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 130) source "fs/cachefiles/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 131)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 132) endmenu
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 133)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 134) if BLOCK
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 135) menu "CD-ROM/DVD Filesystems"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 136)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 137) source "fs/isofs/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 138) source "fs/udf/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 139)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 140) endmenu
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 141) endif # BLOCK
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 142)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 143) if BLOCK
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 144) menu "DOS/FAT/EXFAT/NT Filesystems"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 145)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 146) source "fs/fat/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 147) source "fs/exfat/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 148) source "fs/ntfs/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 149)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 150) endmenu
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 151) endif # BLOCK
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 152)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 153) menu "Pseudo filesystems"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 154)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 155) source "fs/proc/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 156) source "fs/kernfs/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 157) source "fs/sysfs/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 158)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 159) config TMPFS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 160) bool "Tmpfs virtual memory file system support (former shm fs)"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 161) depends on SHMEM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 162) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 163) Tmpfs is a file system which keeps all files in virtual memory.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 164)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 165) Everything in tmpfs is temporary in the sense that no files will be
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 166) created on your hard drive. The files live in memory and swap
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 167) space. If you unmount a tmpfs instance, everything stored therein is
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 168) lost.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 169)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 170) See <file:Documentation/filesystems/tmpfs.rst> for details.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 171)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 172) config TMPFS_POSIX_ACL
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 173) bool "Tmpfs POSIX Access Control Lists"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 174) depends on TMPFS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 175) select TMPFS_XATTR
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 176) select FS_POSIX_ACL
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 177) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 178) POSIX Access Control Lists (ACLs) support additional access rights
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 179) for users and groups beyond the standard owner/group/world scheme,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 180) and this option selects support for ACLs specifically for tmpfs
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 181) filesystems.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 182)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 183) If you've selected TMPFS, it's possible that you'll also need
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 184) this option as there are a number of Linux distros that require
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 185) POSIX ACL support under /dev for certain features to work properly.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 186) For example, some distros need this feature for ALSA-related /dev
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 187) files for sound to work properly. In short, if you're not sure,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 188) say Y.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 189)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 190) config TMPFS_XATTR
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 191) bool "Tmpfs extended attributes"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 192) depends on TMPFS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 193) default n
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 194) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 195) Extended attributes are name:value pairs associated with inodes by
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 196) the kernel or by users (see the attr(5) manual page for details).
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 197)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 198) Currently this enables support for the trusted.* and
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 199) security.* namespaces.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 200)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 201) You need this for POSIX ACL support on tmpfs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 202)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 203) If unsure, say N.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 204)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 205) config TMPFS_INODE64
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 206) bool "Use 64-bit ino_t by default in tmpfs"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 207) depends on TMPFS && 64BIT && !(S390 || ALPHA)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 208) default n
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 209) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 210) tmpfs has historically used only inode numbers as wide as an unsigned
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 211) int. In some cases this can cause wraparound, potentially resulting
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 212) in multiple files with the same inode number on a single device. This
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 213) option makes tmpfs use the full width of ino_t by default, without
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 214) needing to specify the inode64 option when mounting.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 215)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 216) But if a long-lived tmpfs is to be accessed by 32-bit applications so
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 217) ancient that opening a file larger than 2GiB fails with EINVAL, then
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 218) the INODE64 config option and inode64 mount option risk operations
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 219) failing with EOVERFLOW once 33-bit inode numbers are reached.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 220)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 221) To override this configured default, use the inode32 or inode64
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 222) option when mounting.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 223)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 224) If unsure, say N.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 225)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 226) config HUGETLBFS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 227) bool "HugeTLB file system support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 228) depends on X86 || IA64 || SPARC64 || (S390 && 64BIT) || \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 229) SYS_SUPPORTS_HUGETLBFS || BROKEN
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 230) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 231) hugetlbfs is a filesystem backing for HugeTLB pages, based on
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 232) ramfs. For architectures that support it, say Y here and read
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 233) <file:Documentation/admin-guide/mm/hugetlbpage.rst> for details.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 234)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 235) If unsure, say N.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 236)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 237) config HUGETLB_PAGE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 238) def_bool HUGETLBFS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 239)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 240) config MEMFD_CREATE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 241) def_bool TMPFS || HUGETLBFS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 242)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 243) config ARCH_HAS_GIGANTIC_PAGE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 244) bool
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 245)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 246) source "fs/configfs/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 247) source "fs/efivarfs/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 248)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 249) endmenu
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 250)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 251) menuconfig MISC_FILESYSTEMS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 252) bool "Miscellaneous filesystems"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 253) default y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 254) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 255) Say Y here to get to see options for various miscellaneous
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 256) filesystems, such as filesystems that came from other
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 257) operating systems.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 258)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 259) This option alone does not add any kernel code.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 260)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 261) If you say N, all options in this submenu will be skipped and
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 262) disabled; if unsure, say Y here.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 263)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 264) if MISC_FILESYSTEMS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 265)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 266) source "fs/orangefs/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 267) source "fs/adfs/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 268) source "fs/affs/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 269) source "fs/ecryptfs/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 270) source "fs/hfs/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 271) source "fs/hfsplus/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 272) source "fs/befs/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 273) source "fs/bfs/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 274) source "fs/efs/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 275) source "fs/jffs2/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 276) # UBIFS File system configuration
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 277) source "fs/ubifs/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 278) source "fs/cramfs/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 279) source "fs/squashfs/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 280) source "fs/freevxfs/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 281) source "fs/minix/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 282) source "fs/omfs/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 283) source "fs/hpfs/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 284) source "fs/qnx4/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 285) source "fs/qnx6/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 286) source "fs/romfs/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 287) source "fs/pstore/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 288) source "fs/sysv/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 289) source "fs/ufs/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 290) source "fs/erofs/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 291) source "fs/vboxsf/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 292)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 293) endif # MISC_FILESYSTEMS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 294)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 295) menuconfig NETWORK_FILESYSTEMS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 296) bool "Network File Systems"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 297) default y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 298) depends on NET
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 299) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 300) Say Y here to get to see options for network filesystems and
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 301) filesystem-related networking code, such as NFS daemon and
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 302) RPCSEC security modules.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 303)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 304) This option alone does not add any kernel code.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 305)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 306) If you say N, all options in this submenu will be skipped and
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 307) disabled; if unsure, say Y here.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 308)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 309) if NETWORK_FILESYSTEMS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 310)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 311) source "fs/nfs/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 312) source "fs/nfsd/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 313)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 314) config GRACE_PERIOD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 315) tristate
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 316)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 317) config LOCKD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 318) tristate
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 319) depends on FILE_LOCKING
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 320) select GRACE_PERIOD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 321)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 322) config LOCKD_V4
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 323) bool
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 324) depends on NFSD_V3 || NFS_V3
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 325) depends on FILE_LOCKING
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 326) default y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 327)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 328) config NFS_ACL_SUPPORT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 329) tristate
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 330) select FS_POSIX_ACL
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 331)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 332) config NFS_COMMON
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 333) bool
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 334) depends on NFSD || NFS_FS || LOCKD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 335) default y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 336)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 337) source "net/sunrpc/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 338) source "fs/ceph/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 339) source "fs/cifs/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 340) source "fs/coda/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 341) source "fs/afs/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 342) source "fs/9p/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 343)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 344) endif # NETWORK_FILESYSTEMS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 345)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 346) source "fs/nls/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 347) source "fs/dlm/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 348) source "fs/unicode/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 349)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 350) config IO_WQ
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 351) bool
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 352)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 353) endmenu