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