11da177e4SLinus Torvalds# 21da177e4SLinus Torvalds# File system configuration 31da177e4SLinus Torvalds# 41da177e4SLinus Torvalds 51da177e4SLinus Torvaldsmenu "File systems" 61da177e4SLinus Torvalds 7bfcfaa77SLinus Torvalds# Use unaligned word dcache accesses 8bfcfaa77SLinus Torvaldsconfig DCACHE_WORD_ACCESS 9bfcfaa77SLinus Torvalds bool 10bfcfaa77SLinus Torvalds 119361401eSDavid Howellsif BLOCK 129361401eSDavid Howells 13ae259a9cSChristoph Hellwigconfig FS_IOMAP 14ae259a9cSChristoph Hellwig bool 15ae259a9cSChristoph Hellwig 166da0b38fSAlexey Dobriyansource "fs/ext2/Kconfig" 176da0b38fSAlexey Dobriyansource "fs/ext4/Kconfig" 186da0b38fSAlexey Dobriyansource "fs/jbd2/Kconfig" 19dab291afSMingming Cao 201da177e4SLinus Torvaldsconfig FS_MBCACHE 2102ea2104SMingming Cao# Meta block cache for Extended Attributes (ext2/ext3/ext4) 221da177e4SLinus Torvalds tristate 232c512397SAdrian Bunk default y if EXT2_FS=y && EXT2_FS_XATTR 24939da108STao Ma default y if EXT4_FS=y 25c290ea01SJan Kara default m if EXT2_FS_XATTR || EXT4_FS 261da177e4SLinus Torvalds 27b16ecfe2SAlexey Dobriyansource "fs/reiserfs/Kconfig" 28f5c77969SAlexey Dobriyansource "fs/jfs/Kconfig" 291da177e4SLinus Torvalds 3069050eeeSTomas Szepesource "fs/xfs/Kconfig" 3169050eeeSTomas Szepesource "fs/gfs2/Kconfig" 3269050eeeSTomas Szepesource "fs/ocfs2/Kconfig" 3369050eeeSTomas Szepesource "fs/btrfs/Kconfig" 3441f4db0fSRyusuke Konishisource "fs/nilfs2/Kconfig" 35d7196c5aSJaegeuk Kimsource "fs/f2fs/Kconfig" 3669050eeeSTomas Szepe 376cd176a5SMatthew Wilcoxconfig FS_DAX 386cd176a5SMatthew Wilcox bool "Direct Access (DAX) support" 396cd176a5SMatthew Wilcox depends on MMU 40d92576f1SMatthew Wilcox depends on !(ARM || MIPS || SPARC) 416affb9d7SRoss Zwisler select FS_IOMAP 42ef510424SDan Williams select DAX 436cd176a5SMatthew Wilcox help 446cd176a5SMatthew Wilcox Direct Access (DAX) can be used on memory-backed block devices. 456cd176a5SMatthew Wilcox If the block device supports DAX and the filesystem supports DAX, 466cd176a5SMatthew Wilcox then you can avoid using the pagecache to buffer I/Os. Turning 476cd176a5SMatthew Wilcox on this option will compile in support for DAX; you will need to 486cd176a5SMatthew Wilcox mount the filesystem using the -o dax option. 496cd176a5SMatthew Wilcox 506cd176a5SMatthew Wilcox If you do not have a block device that is capable of using this, 516cd176a5SMatthew Wilcox or if unsure, say N. Saying Y will increase the size of the kernel 526cd176a5SMatthew Wilcox by about 5kB. 536cd176a5SMatthew Wilcox 54ee82c9edSDan Williamsconfig FS_DAX_PMD 55ee82c9edSDan Williams bool 56ee82c9edSDan Williams default FS_DAX 57ee82c9edSDan Williams depends on FS_DAX 58c046c321SDan Williams depends on ZONE_DEVICE 59c046c321SDan Williams depends on TRANSPARENT_HUGEPAGE 60ee82c9edSDan Williams 61*569d0365SDan Williams# Selected by DAX drivers that do not expect filesystem DAX to support 62*569d0365SDan Williams# get_user_pages() of DAX mappings. I.e. "limited" indicates no support 63*569d0365SDan Williams# for fork() of processes with MAP_SHARED mappings or support for 64*569d0365SDan Williams# direct-I/O to a DAX mapping. 65*569d0365SDan Williamsconfig FS_DAX_LIMITED 66*569d0365SDan Williams bool 67*569d0365SDan Williams 6869050eeeSTomas Szepeendif # BLOCK 6969050eeeSTomas Szepe 7016ebe911SRandy Dunlap# Posix ACL utility routines 7116ebe911SRandy Dunlap# 7216ebe911SRandy Dunlap# Note: Posix ACLs can be implemented without these helpers. Never use 7316ebe911SRandy Dunlap# this symbol for ifdefs in core code. 7416ebe911SRandy Dunlap# 7516ebe911SRandy Dunlapconfig FS_POSIX_ACL 7616ebe911SRandy Dunlap def_bool n 7716ebe911SRandy Dunlap 784199ca77SRandy Dunlapconfig EXPORTFS 7979fead47SJonas Gorski tristate 804199ca77SRandy Dunlap 8115d66ac2SBenjamin Coddingtonconfig EXPORTFS_BLOCK_OPS 8215d66ac2SBenjamin Coddington bool "Enable filesystem export operations for block IO" 8315d66ac2SBenjamin Coddington help 8415d66ac2SBenjamin Coddington This option enables the export operations for a filesystem to support 8515d66ac2SBenjamin Coddington external block IO. 8615d66ac2SBenjamin Coddington 87bfcd17a6SThomas Petazzoniconfig FILE_LOCKING 886a108a14SDavid Rientjes bool "Enable POSIX file locking API" if EXPERT 89bfcd17a6SThomas Petazzoni default y 90bfcd17a6SThomas Petazzoni help 91bfcd17a6SThomas Petazzoni This option enables standard file locking support, required 92bfcd17a6SThomas Petazzoni for filesystems like NFS and for the flock() system 93bfcd17a6SThomas Petazzoni call. Disabling this option saves about 11k. 94bfcd17a6SThomas Petazzoni 959e8925b6SJeff Laytonconfig MANDATORY_FILE_LOCKING 969e8925b6SJeff Layton bool "Enable Mandatory file locking" 979e8925b6SJeff Layton depends on FILE_LOCKING 989e8925b6SJeff Layton default y 999e8925b6SJeff Layton help 1009e8925b6SJeff Layton This option enables files appropriately marked files on appropriely 1019e8925b6SJeff Layton mounted filesystems to support mandatory locking. 1029e8925b6SJeff Layton 1039e8925b6SJeff Layton To the best of my knowledge this is dead code that no one cares about. 1049e8925b6SJeff Layton 1050b81d077SJaegeuk Kimsource "fs/crypto/Kconfig" 1060b81d077SJaegeuk Kim 107272eb014SEric Parissource "fs/notify/Kconfig" 1082d9048e2SAmy Griffis 109884d179dSJan Karasource "fs/quota/Kconfig" 1101da177e4SLinus Torvalds 11190ffd467SAlexey Dobriyansource "fs/autofs4/Kconfig" 1123ef7784eSAlexey Dobriyansource "fs/fuse/Kconfig" 113e9be9d5eSMiklos Szeredisource "fs/overlayfs/Kconfig" 11404578f17SMiklos Szeredi 11506b3db1bSDavid Howellsmenu "Caches" 11606b3db1bSDavid Howells 11706b3db1bSDavid Howellssource "fs/fscache/Kconfig" 1189ae326a6SDavid Howellssource "fs/cachefiles/Kconfig" 11906b3db1bSDavid Howells 12006b3db1bSDavid Howellsendmenu 12106b3db1bSDavid Howells 1229361401eSDavid Howellsif BLOCK 1231da177e4SLinus Torvaldsmenu "CD-ROM/DVD Filesystems" 1241da177e4SLinus Torvalds 125ddfaccd9SAlexey Dobriyansource "fs/isofs/Kconfig" 126ddfaccd9SAlexey Dobriyansource "fs/udf/Kconfig" 1271da177e4SLinus Torvalds 1281da177e4SLinus Torvaldsendmenu 12925fad945SRandy Dunlapendif # BLOCK 1301da177e4SLinus Torvalds 1319361401eSDavid Howellsif BLOCK 1321da177e4SLinus Torvaldsmenu "DOS/FAT/NT Filesystems" 1331da177e4SLinus Torvalds 1341c6ace01SAlexey Dobriyansource "fs/fat/Kconfig" 1359d73ac9eSAlexey Dobriyansource "fs/ntfs/Kconfig" 1361da177e4SLinus Torvalds 1371da177e4SLinus Torvaldsendmenu 13825fad945SRandy Dunlapendif # BLOCK 1391da177e4SLinus Torvalds 1401da177e4SLinus Torvaldsmenu "Pseudo filesystems" 1411da177e4SLinus Torvalds 1426eedf8d3SAlexey Dobriyansource "fs/proc/Kconfig" 143ba341d55STejun Heosource "fs/kernfs/Kconfig" 1445f3a211aSAlexey Dobriyansource "fs/sysfs/Kconfig" 1451da177e4SLinus Torvalds 1461da177e4SLinus Torvaldsconfig TMPFS 147f5fc870dSRobert P. J. Day bool "Tmpfs virtual memory file system support (former shm fs)" 1483f96b79aSHugh Dickins depends on SHMEM 1491da177e4SLinus Torvalds help 1501da177e4SLinus Torvalds Tmpfs is a file system which keeps all files in virtual memory. 1511da177e4SLinus Torvalds 1521da177e4SLinus Torvalds Everything in tmpfs is temporary in the sense that no files will be 1531da177e4SLinus Torvalds created on your hard drive. The files live in memory and swap 1541da177e4SLinus Torvalds space. If you unmount a tmpfs instance, everything stored therein is 1551da177e4SLinus Torvalds lost. 1561da177e4SLinus Torvalds 1571da177e4SLinus Torvalds See <file:Documentation/filesystems/tmpfs.txt> for details. 1581da177e4SLinus Torvalds 1594db70f73SEric Parisconfig TMPFS_POSIX_ACL 1604db70f73SEric Paris bool "Tmpfs POSIX Access Control Lists" 1614db70f73SEric Paris depends on TMPFS 1624db70f73SEric Paris select TMPFS_XATTR 163feda821eSChristoph Hellwig select FS_POSIX_ACL 1644db70f73SEric Paris help 165206506ccSRobert P. J. Day POSIX Access Control Lists (ACLs) support additional access rights 166206506ccSRobert P. J. Day for users and groups beyond the standard owner/group/world scheme, 167206506ccSRobert P. J. Day and this option selects support for ACLs specifically for tmpfs 168206506ccSRobert P. J. Day filesystems. 169206506ccSRobert P. J. Day 170206506ccSRobert P. J. Day If you've selected TMPFS, it's possible that you'll also need 171206506ccSRobert P. J. Day this option as there are a number of Linux distros that require 172206506ccSRobert P. J. Day POSIX ACL support under /dev for certain features to work properly. 173206506ccSRobert P. J. Day For example, some distros need this feature for ALSA-related /dev 174206506ccSRobert P. J. Day files for sound to work properly. In short, if you're not sure, 175206506ccSRobert P. J. Day say Y. 1764db70f73SEric Paris 1774db70f73SEric Paris To learn more about Access Control Lists, visit the POSIX ACLs for 1784db70f73SEric Paris Linux website <http://acl.bestbits.at/>. 1794db70f73SEric Paris 180b09e0fa4SEric Parisconfig TMPFS_XATTR 181b09e0fa4SEric Paris bool "Tmpfs extended attributes" 182b09e0fa4SEric Paris depends on TMPFS 183b09e0fa4SEric Paris default n 184b09e0fa4SEric Paris help 185b09e0fa4SEric Paris Extended attributes are name:value pairs associated with inodes by 186b09e0fa4SEric Paris the kernel or by users (see the attr(5) manual page, or visit 187b09e0fa4SEric Paris <http://acl.bestbits.at/> for details). 188b09e0fa4SEric Paris 189b09e0fa4SEric Paris Currently this enables support for the trusted.* and 190b09e0fa4SEric Paris security.* namespaces. 191b09e0fa4SEric Paris 192b09e0fa4SEric Paris You need this for POSIX ACL support on tmpfs. 193b09e0fa4SEric Paris 1944db70f73SEric Paris If unsure, say N. 19539f0247dSAndreas Gruenbacher 1961da177e4SLinus Torvaldsconfig HUGETLBFS 1971da177e4SLinus Torvalds bool "HugeTLB file system support" 1985a1eb5c4SBenjamin Herrenschmidt depends on X86 || IA64 || SPARC64 || (S390 && 64BIT) || \ 199ffb4a73dSPaul Mundt SYS_SUPPORTS_HUGETLBFS || BROKEN 200dda27d1aSArthur Othieno help 201dda27d1aSArthur Othieno hugetlbfs is a filesystem backing for HugeTLB pages, based on 202dda27d1aSArthur Othieno ramfs. For architectures that support it, say Y here and read 203dda27d1aSArthur Othieno <file:Documentation/vm/hugetlbpage.txt> for details. 204dda27d1aSArthur Othieno 205dda27d1aSArthur Othieno If unsure, say N. 2061da177e4SLinus Torvalds 2071da177e4SLinus Torvaldsconfig HUGETLB_PAGE 2081da177e4SLinus Torvalds def_bool HUGETLBFS 2091da177e4SLinus Torvalds 210461a7184SYisheng Xieconfig ARCH_HAS_GIGANTIC_PAGE 211461a7184SYisheng Xie bool 212461a7184SYisheng Xie 2134591dabeSAlexey Dobriyansource "fs/configfs/Kconfig" 21462c204ddSLeif Lindholmsource "fs/efivarfs/Kconfig" 2157063fbf2SJoel Becker 2161da177e4SLinus Torvaldsendmenu 2171da177e4SLinus Torvalds 21867ec7d3aSRandy Dunlapmenuconfig MISC_FILESYSTEMS 21967ec7d3aSRandy Dunlap bool "Miscellaneous filesystems" 22067ec7d3aSRandy Dunlap default y 22167ec7d3aSRandy Dunlap ---help--- 22267ec7d3aSRandy Dunlap Say Y here to get to see options for various miscellaneous 22367ec7d3aSRandy Dunlap filesystems, such as filesystems that came from other 22467ec7d3aSRandy Dunlap operating systems. 22567ec7d3aSRandy Dunlap 22667ec7d3aSRandy Dunlap This option alone does not add any kernel code. 22767ec7d3aSRandy Dunlap 22867ec7d3aSRandy Dunlap If you say N, all options in this submenu will be skipped and 22967ec7d3aSRandy Dunlap disabled; if unsure, say Y here. 23067ec7d3aSRandy Dunlap 23167ec7d3aSRandy Dunlapif MISC_FILESYSTEMS 2321da177e4SLinus Torvalds 23307f01962SMike Marshallsource "fs/orangefs/Kconfig" 234bc2de2aeSAlexey Dobriyansource "fs/adfs/Kconfig" 23510951bf0SAlexey Dobriyansource "fs/affs/Kconfig" 236295c896cSAlexey Dobriyansource "fs/ecryptfs/Kconfig" 237b08bac1fSAlexey Dobriyansource "fs/hfs/Kconfig" 238b08bac1fSAlexey Dobriyansource "fs/hfsplus/Kconfig" 2390b09eb32SAlexey Dobriyansource "fs/befs/Kconfig" 2400ff42384SAlexey Dobriyansource "fs/bfs/Kconfig" 241571f0a0bSAlexey Dobriyansource "fs/efs/Kconfig" 24231db6e9eSAlexey Dobriyansource "fs/jffs2/Kconfig" 2430d7eff87SArtem Bityutskiy# UBIFS File system configuration 2440d7eff87SArtem Bityutskiysource "fs/ubifs/Kconfig" 2452a22783bSAlexey Dobriyansource "fs/cramfs/Kconfig" 24622635ec9SAlexey Dobriyansource "fs/squashfs/Kconfig" 24722135169SAlexey Dobriyansource "fs/freevxfs/Kconfig" 2488b1cd7d3SAlexey Dobriyansource "fs/minix/Kconfig" 249da55e6f9SAlexey Dobriyansource "fs/omfs/Kconfig" 250928ea192SAlexey Dobriyansource "fs/hpfs/Kconfig" 2514c741583SAlexey Dobriyansource "fs/qnx4/Kconfig" 2525d026c72SKai Bankettsource "fs/qnx6/Kconfig" 25341810246SAlexey Dobriyansource "fs/romfs/Kconfig" 254ca01d6ddSTony Lucksource "fs/pstore/Kconfig" 2558af915baSAlexey Dobriyansource "fs/sysv/Kconfig" 256a276a52fSAlexey Dobriyansource "fs/ufs/Kconfig" 2570d8fe329SBoaz Harroshsource "fs/exofs/Kconfig" 2580c4fb877SRyusuke Konishi 25967ec7d3aSRandy Dunlapendif # MISC_FILESYSTEMS 2601da177e4SLinus Torvalds 261831c2dc5SBoaz Harroshsource "fs/exofs/Kconfig.ore" 262831c2dc5SBoaz Harrosh 263ea0985adSJan Engelhardtmenuconfig NETWORK_FILESYSTEMS 264ea0985adSJan Engelhardt bool "Network File Systems" 265ea0985adSJan Engelhardt default y 2661da177e4SLinus Torvalds depends on NET 267ea0985adSJan Engelhardt ---help--- 268ea0985adSJan Engelhardt Say Y here to get to see options for network filesystems and 269ea0985adSJan Engelhardt filesystem-related networking code, such as NFS daemon and 270ea0985adSJan Engelhardt RPCSEC security modules. 2716fb1bc10SChuck Lever 272ea0985adSJan Engelhardt This option alone does not add any kernel code. 273ea0985adSJan Engelhardt 274ea0985adSJan Engelhardt If you say N, all options in this submenu will be skipped and 275ea0985adSJan Engelhardt disabled; if unsure, say Y here. 276ea0985adSJan Engelhardt 277ea0985adSJan Engelhardtif NETWORK_FILESYSTEMS 2781da177e4SLinus Torvalds 27997afe47aSAlexey Dobriyansource "fs/nfs/Kconfig" 280e2b329e2SAlexey Dobriyansource "fs/nfsd/Kconfig" 2811da177e4SLinus Torvalds 282f7790029SJeff Laytonconfig GRACE_PERIOD 283f7790029SJeff Layton tristate 284f7790029SJeff Layton 2851da177e4SLinus Torvaldsconfig LOCKD 2861da177e4SLinus Torvalds tristate 287dd4dc82dSRandy Dunlap depends on FILE_LOCKING 288f7790029SJeff Layton select GRACE_PERIOD 2891da177e4SLinus Torvalds 2901da177e4SLinus Torvaldsconfig LOCKD_V4 2911da177e4SLinus Torvalds bool 2921da177e4SLinus Torvalds depends on NFSD_V3 || NFS_V3 293dd4dc82dSRandy Dunlap depends on FILE_LOCKING 2941da177e4SLinus Torvalds default y 2951da177e4SLinus Torvalds 296a257cdd0SAndreas Gruenbacherconfig NFS_ACL_SUPPORT 297a257cdd0SAndreas Gruenbacher tristate 298a257cdd0SAndreas Gruenbacher select FS_POSIX_ACL 299a257cdd0SAndreas Gruenbacher 300a257cdd0SAndreas Gruenbacherconfig NFS_COMMON 301a257cdd0SAndreas Gruenbacher bool 302f7790029SJeff Layton depends on NFSD || NFS_FS || LOCKD 303a257cdd0SAndreas Gruenbacher default y 304a257cdd0SAndreas Gruenbacher 3059098c24fSAlexey Dobriyansource "net/sunrpc/Kconfig" 3069030aaf9SSage Weilsource "fs/ceph/Kconfig" 307bb26b963SAlexey Dobriyansource "fs/cifs/Kconfig" 3081da177e4SLinus Torvaldssource "fs/ncpfs/Kconfig" 30933a1a6feSAlexey Dobriyansource "fs/coda/Kconfig" 310b2480c7fSAlexey Dobriyansource "fs/afs/Kconfig" 3110fcb4408SAlexey Dobriyansource "fs/9p/Kconfig" 31293fa58cbSEric Van Hensbergen 313ea0985adSJan Engelhardtendif # NETWORK_FILESYSTEMS 3141da177e4SLinus Torvalds 3151da177e4SLinus Torvaldssource "fs/nls/Kconfig" 316e7fd4179SDavid Teiglandsource "fs/dlm/Kconfig" 3171da177e4SLinus Torvalds 3181da177e4SLinus Torvaldsendmenu 319