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