/proc/kpageflags: return KPF_BUDDY for "tail" buddy pages
[linux-2.6-block.git] / fs / Kconfig
CommitLineData
1da177e4
LT
1#
2# File system configuration
3#
4
5menu "File systems"
6
bfcfaa77
LT
7# Use unaligned word dcache accesses
8config DCACHE_WORD_ACCESS
9 bool
10
9361401e
DH
11if BLOCK
12
6da0b38f 13source "fs/ext2/Kconfig"
6da0b38f 14source "fs/ext4/Kconfig"
6da0b38f 15source "fs/jbd2/Kconfig"
dab291af 16
1da177e4 17config FS_MBCACHE
02ea2104 18# Meta block cache for Extended Attributes (ext2/ext3/ext4)
1da177e4 19 tristate
2c512397 20 default y if EXT2_FS=y && EXT2_FS_XATTR
939da108 21 default y if EXT4_FS=y
c290ea01 22 default m if EXT2_FS_XATTR || EXT4_FS
1da177e4 23
b16ecfe2 24source "fs/reiserfs/Kconfig"
f5c77969 25source "fs/jfs/Kconfig"
1da177e4 26
69050eee
TS
27source "fs/xfs/Kconfig"
28source "fs/gfs2/Kconfig"
29source "fs/ocfs2/Kconfig"
30source "fs/btrfs/Kconfig"
41f4db0f 31source "fs/nilfs2/Kconfig"
d7196c5a 32source "fs/f2fs/Kconfig"
69050eee 33
6cd176a5
MW
34config FS_DAX
35 bool "Direct Access (DAX) support"
36 depends on MMU
d92576f1 37 depends on !(ARM || MIPS || SPARC)
6cd176a5
MW
38 help
39 Direct Access (DAX) can be used on memory-backed block devices.
40 If the block device supports DAX and the filesystem supports DAX,
41 then you can avoid using the pagecache to buffer I/Os. Turning
42 on this option will compile in support for DAX; you will need to
43 mount the filesystem using the -o dax option.
44
45 If you do not have a block device that is capable of using this,
46 or if unsure, say N. Saying Y will increase the size of the kernel
47 by about 5kB.
48
ee82c9ed
DW
49config FS_DAX_PMD
50 bool
51 default FS_DAX
52 depends on FS_DAX
c046c321
DW
53 depends on ZONE_DEVICE
54 depends on TRANSPARENT_HUGEPAGE
ee82c9ed 55
69050eee
TS
56endif # BLOCK
57
16ebe911
RD
58# Posix ACL utility routines
59#
60# Note: Posix ACLs can be implemented without these helpers. Never use
61# this symbol for ifdefs in core code.
62#
63config FS_POSIX_ACL
64 def_bool n
65
4199ca77 66config EXPORTFS
79fead47 67 tristate
4199ca77 68
bfcd17a6 69config FILE_LOCKING
6a108a14 70 bool "Enable POSIX file locking API" if EXPERT
bfcd17a6
TP
71 default y
72 help
73 This option enables standard file locking support, required
74 for filesystems like NFS and for the flock() system
75 call. Disabling this option saves about 11k.
76
9e8925b6
JL
77config MANDATORY_FILE_LOCKING
78 bool "Enable Mandatory file locking"
79 depends on FILE_LOCKING
80 default y
81 help
82 This option enables files appropriately marked files on appropriely
83 mounted filesystems to support mandatory locking.
84
85 To the best of my knowledge this is dead code that no one cares about.
86
272eb014 87source "fs/notify/Kconfig"
0eeca283 88
884d179d 89source "fs/quota/Kconfig"
1da177e4 90
90ffd467 91source "fs/autofs4/Kconfig"
3ef7784e 92source "fs/fuse/Kconfig"
e9be9d5e 93source "fs/overlayfs/Kconfig"
04578f17 94
06b3db1b
DH
95menu "Caches"
96
97source "fs/fscache/Kconfig"
9ae326a6 98source "fs/cachefiles/Kconfig"
06b3db1b
DH
99
100endmenu
101
9361401e 102if BLOCK
1da177e4
LT
103menu "CD-ROM/DVD Filesystems"
104
ddfaccd9
AD
105source "fs/isofs/Kconfig"
106source "fs/udf/Kconfig"
1da177e4
LT
107
108endmenu
25fad945 109endif # BLOCK
1da177e4 110
9361401e 111if BLOCK
1da177e4
LT
112menu "DOS/FAT/NT Filesystems"
113
1c6ace01 114source "fs/fat/Kconfig"
9d73ac9e 115source "fs/ntfs/Kconfig"
1da177e4
LT
116
117endmenu
25fad945 118endif # BLOCK
1da177e4
LT
119
120menu "Pseudo filesystems"
121
6eedf8d3 122source "fs/proc/Kconfig"
ba341d55 123source "fs/kernfs/Kconfig"
5f3a211a 124source "fs/sysfs/Kconfig"
1da177e4 125
1da177e4 126config TMPFS
f5fc870d 127 bool "Tmpfs virtual memory file system support (former shm fs)"
3f96b79a 128 depends on SHMEM
1da177e4
LT
129 help
130 Tmpfs is a file system which keeps all files in virtual memory.
131
132 Everything in tmpfs is temporary in the sense that no files will be
133 created on your hard drive. The files live in memory and swap
134 space. If you unmount a tmpfs instance, everything stored therein is
135 lost.
136
137 See <file:Documentation/filesystems/tmpfs.txt> for details.
138
4db70f73
EP
139config TMPFS_POSIX_ACL
140 bool "Tmpfs POSIX Access Control Lists"
141 depends on TMPFS
142 select TMPFS_XATTR
feda821e 143 select FS_POSIX_ACL
4db70f73 144 help
206506cc
RD
145 POSIX Access Control Lists (ACLs) support additional access rights
146 for users and groups beyond the standard owner/group/world scheme,
147 and this option selects support for ACLs specifically for tmpfs
148 filesystems.
149
150 If you've selected TMPFS, it's possible that you'll also need
151 this option as there are a number of Linux distros that require
152 POSIX ACL support under /dev for certain features to work properly.
153 For example, some distros need this feature for ALSA-related /dev
154 files for sound to work properly. In short, if you're not sure,
155 say Y.
4db70f73
EP
156
157 To learn more about Access Control Lists, visit the POSIX ACLs for
158 Linux website <http://acl.bestbits.at/>.
159
b09e0fa4
EP
160config TMPFS_XATTR
161 bool "Tmpfs extended attributes"
162 depends on TMPFS
163 default n
164 help
165 Extended attributes are name:value pairs associated with inodes by
166 the kernel or by users (see the attr(5) manual page, or visit
167 <http://acl.bestbits.at/> for details).
168
169 Currently this enables support for the trusted.* and
170 security.* namespaces.
171
b09e0fa4
EP
172 You need this for POSIX ACL support on tmpfs.
173
4db70f73 174 If unsure, say N.
39f0247d 175
1da177e4
LT
176config HUGETLBFS
177 bool "HugeTLB file system support"
5a1eb5c4 178 depends on X86 || IA64 || SPARC64 || (S390 && 64BIT) || \
ffb4a73d 179 SYS_SUPPORTS_HUGETLBFS || BROKEN
dda27d1a
AO
180 help
181 hugetlbfs is a filesystem backing for HugeTLB pages, based on
182 ramfs. For architectures that support it, say Y here and read
183 <file:Documentation/vm/hugetlbpage.txt> for details.
184
185 If unsure, say N.
1da177e4
LT
186
187config HUGETLB_PAGE
188 def_bool HUGETLBFS
189
4591dabe 190source "fs/configfs/Kconfig"
62c204dd 191source "fs/efivarfs/Kconfig"
7063fbf2 192
1da177e4
LT
193endmenu
194
67ec7d3a
RD
195menuconfig MISC_FILESYSTEMS
196 bool "Miscellaneous filesystems"
197 default y
198 ---help---
199 Say Y here to get to see options for various miscellaneous
200 filesystems, such as filesystems that came from other
201 operating systems.
202
203 This option alone does not add any kernel code.
204
205 If you say N, all options in this submenu will be skipped and
206 disabled; if unsure, say Y here.
207
208if MISC_FILESYSTEMS
1da177e4 209
bc2de2ae 210source "fs/adfs/Kconfig"
10951bf0 211source "fs/affs/Kconfig"
295c896c 212source "fs/ecryptfs/Kconfig"
b08bac1f
AD
213source "fs/hfs/Kconfig"
214source "fs/hfsplus/Kconfig"
0b09eb32 215source "fs/befs/Kconfig"
0ff42384 216source "fs/bfs/Kconfig"
571f0a0b 217source "fs/efs/Kconfig"
31db6e9e 218source "fs/jffs2/Kconfig"
0d7eff87
AB
219# UBIFS File system configuration
220source "fs/ubifs/Kconfig"
5db53f3e 221source "fs/logfs/Kconfig"
2a22783b 222source "fs/cramfs/Kconfig"
22635ec9 223source "fs/squashfs/Kconfig"
22135169 224source "fs/freevxfs/Kconfig"
8b1cd7d3 225source "fs/minix/Kconfig"
da55e6f9 226source "fs/omfs/Kconfig"
928ea192 227source "fs/hpfs/Kconfig"
4c741583 228source "fs/qnx4/Kconfig"
5d026c72 229source "fs/qnx6/Kconfig"
41810246 230source "fs/romfs/Kconfig"
ca01d6dd 231source "fs/pstore/Kconfig"
8af915ba 232source "fs/sysv/Kconfig"
a276a52f 233source "fs/ufs/Kconfig"
0d8fe329 234source "fs/exofs/Kconfig"
0c4fb877 235
67ec7d3a 236endif # MISC_FILESYSTEMS
1da177e4 237
831c2dc5
BH
238source "fs/exofs/Kconfig.ore"
239
ea0985ad
JE
240menuconfig NETWORK_FILESYSTEMS
241 bool "Network File Systems"
242 default y
1da177e4 243 depends on NET
ea0985ad
JE
244 ---help---
245 Say Y here to get to see options for network filesystems and
246 filesystem-related networking code, such as NFS daemon and
247 RPCSEC security modules.
6fb1bc10 248
ea0985ad
JE
249 This option alone does not add any kernel code.
250
251 If you say N, all options in this submenu will be skipped and
252 disabled; if unsure, say Y here.
253
254if NETWORK_FILESYSTEMS
1da177e4 255
97afe47a 256source "fs/nfs/Kconfig"
e2b329e2 257source "fs/nfsd/Kconfig"
1da177e4 258
f7790029
JL
259config GRACE_PERIOD
260 tristate
261
1da177e4
LT
262config LOCKD
263 tristate
dd4dc82d 264 depends on FILE_LOCKING
f7790029 265 select GRACE_PERIOD
1da177e4
LT
266
267config LOCKD_V4
268 bool
269 depends on NFSD_V3 || NFS_V3
dd4dc82d 270 depends on FILE_LOCKING
1da177e4
LT
271 default y
272
a257cdd0
AG
273config NFS_ACL_SUPPORT
274 tristate
275 select FS_POSIX_ACL
276
277config NFS_COMMON
278 bool
f7790029 279 depends on NFSD || NFS_FS || LOCKD
a257cdd0
AG
280 default y
281
9098c24f 282source "net/sunrpc/Kconfig"
9030aaf9 283source "fs/ceph/Kconfig"
bb26b963 284source "fs/cifs/Kconfig"
1da177e4 285source "fs/ncpfs/Kconfig"
33a1a6fe 286source "fs/coda/Kconfig"
b2480c7f 287source "fs/afs/Kconfig"
0fcb4408 288source "fs/9p/Kconfig"
93fa58cb 289
ea0985ad 290endif # NETWORK_FILESYSTEMS
1da177e4 291
1da177e4 292source "fs/nls/Kconfig"
e7fd4179 293source "fs/dlm/Kconfig"
1da177e4
LT
294
295endmenu