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