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