Merge branch 'flock' of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/bkl
[linux-2.6.git] / fs / Kconfig
1 #
2 # File system configuration
3 #
4
5 menu "File systems"
6
7 if BLOCK
8
9 source "fs/ext2/Kconfig"
10 source "fs/ext3/Kconfig"
11 source "fs/ext4/Kconfig"
12
13 config FS_XIP
14 # execute in place
15         bool
16         depends on EXT2_FS_XIP
17         default y
18
19 source "fs/jbd/Kconfig"
20 source "fs/jbd2/Kconfig"
21
22 config FS_MBCACHE
23 # Meta block cache for Extended Attributes (ext2/ext3/ext4)
24         tristate
25         default y if EXT2_FS=y && EXT2_FS_XATTR
26         default y if EXT3_FS=y && EXT3_FS_XATTR
27         default y if EXT4_FS=y && EXT4_FS_XATTR
28         default m if EXT2_FS_XATTR || EXT3_FS_XATTR || EXT4_FS_XATTR
29
30 source "fs/reiserfs/Kconfig"
31 source "fs/jfs/Kconfig"
32
33 config FS_POSIX_ACL
34 # Posix ACL utility routines (for now, only ext2/ext3/jfs/reiserfs/nfs4)
35 #
36 # NOTE: you can implement Posix ACLs without these helpers (XFS does).
37 #       Never use this symbol for ifdefs.
38 #
39         bool
40         default n
41
42 source "fs/xfs/Kconfig"
43 source "fs/gfs2/Kconfig"
44 source "fs/ocfs2/Kconfig"
45 source "fs/btrfs/Kconfig"
46 source "fs/nilfs2/Kconfig"
47
48 endif # BLOCK
49
50 config EXPORTFS
51         tristate
52
53 config FILE_LOCKING
54         bool "Enable POSIX file locking API" if EMBEDDED
55         default y
56         help
57           This option enables standard file locking support, required
58           for filesystems like NFS and for the flock() system
59           call. Disabling this option saves about 11k.
60
61 source "fs/notify/Kconfig"
62
63 source "fs/quota/Kconfig"
64
65 source "fs/autofs/Kconfig"
66 source "fs/autofs4/Kconfig"
67 source "fs/fuse/Kconfig"
68
69 config CUSE
70         tristate "Character device in Userspace support"
71         depends on FUSE_FS
72         help
73           This FUSE extension allows character devices to be
74           implemented in userspace.
75
76           If you want to develop or use userspace character device
77           based on CUSE, answer Y or M.
78
79 config GENERIC_ACL
80         bool
81         select FS_POSIX_ACL
82
83 menu "Caches"
84
85 source "fs/fscache/Kconfig"
86 source "fs/cachefiles/Kconfig"
87
88 endmenu
89
90 if BLOCK
91 menu "CD-ROM/DVD Filesystems"
92
93 source "fs/isofs/Kconfig"
94 source "fs/udf/Kconfig"
95
96 endmenu
97 endif # BLOCK
98
99 if BLOCK
100 menu "DOS/FAT/NT Filesystems"
101
102 source "fs/fat/Kconfig"
103 source "fs/ntfs/Kconfig"
104
105 endmenu
106 endif # BLOCK
107
108 menu "Pseudo filesystems"
109
110 source "fs/proc/Kconfig"
111 source "fs/sysfs/Kconfig"
112
113 config TMPFS
114         bool "Virtual memory file system support (former shm fs)"
115         depends on SHMEM
116         help
117           Tmpfs is a file system which keeps all files in virtual memory.
118
119           Everything in tmpfs is temporary in the sense that no files will be
120           created on your hard drive. The files live in memory and swap
121           space. If you unmount a tmpfs instance, everything stored therein is
122           lost.
123
124           See <file:Documentation/filesystems/tmpfs.txt> for details.
125
126 config TMPFS_POSIX_ACL
127         bool "Tmpfs POSIX Access Control Lists"
128         depends on TMPFS
129         select GENERIC_ACL
130         help
131           POSIX Access Control Lists (ACLs) support permissions for users and
132           groups beyond the owner/group/world scheme.
133
134           To learn more about Access Control Lists, visit the POSIX ACLs for
135           Linux website <http://acl.bestbits.at/>.
136
137           If you don't know what Access Control Lists are, say N.
138
139 config HUGETLBFS
140         bool "HugeTLB file system support"
141         depends on X86 || IA64 || SPARC64 || (S390 && 64BIT) || \
142                    SYS_SUPPORTS_HUGETLBFS || BROKEN
143         help
144           hugetlbfs is a filesystem backing for HugeTLB pages, based on
145           ramfs. For architectures that support it, say Y here and read
146           <file:Documentation/vm/hugetlbpage.txt> for details.
147
148           If unsure, say N.
149
150 config HUGETLB_PAGE
151         def_bool HUGETLBFS
152
153 source "fs/configfs/Kconfig"
154
155 endmenu
156
157 menuconfig MISC_FILESYSTEMS
158         bool "Miscellaneous filesystems"
159         default y
160         ---help---
161           Say Y here to get to see options for various miscellaneous
162           filesystems, such as filesystems that came from other
163           operating systems.
164
165           This option alone does not add any kernel code.
166
167           If you say N, all options in this submenu will be skipped and
168           disabled; if unsure, say Y here.
169
170 if MISC_FILESYSTEMS
171
172 source "fs/adfs/Kconfig"
173 source "fs/affs/Kconfig"
174 source "fs/ecryptfs/Kconfig"
175 source "fs/hfs/Kconfig"
176 source "fs/hfsplus/Kconfig"
177 source "fs/befs/Kconfig"
178 source "fs/bfs/Kconfig"
179 source "fs/efs/Kconfig"
180 source "fs/jffs2/Kconfig"
181 # UBIFS File system configuration
182 source "fs/ubifs/Kconfig"
183 source "fs/logfs/Kconfig"
184 source "fs/cramfs/Kconfig"
185 source "fs/squashfs/Kconfig"
186 source "fs/freevxfs/Kconfig"
187 source "fs/minix/Kconfig"
188 source "fs/omfs/Kconfig"
189 source "fs/hpfs/Kconfig"
190 source "fs/qnx4/Kconfig"
191 source "fs/romfs/Kconfig"
192 source "fs/sysv/Kconfig"
193 source "fs/ufs/Kconfig"
194 source "fs/exofs/Kconfig"
195
196 endif # MISC_FILESYSTEMS
197
198 menuconfig NETWORK_FILESYSTEMS
199         bool "Network File Systems"
200         default y
201         depends on NET
202         ---help---
203           Say Y here to get to see options for network filesystems and
204           filesystem-related networking code, such as NFS daemon and
205           RPCSEC security modules.
206
207           This option alone does not add any kernel code.
208
209           If you say N, all options in this submenu will be skipped and
210           disabled; if unsure, say Y here.
211
212 if NETWORK_FILESYSTEMS
213
214 source "fs/nfs/Kconfig"
215 source "fs/nfsd/Kconfig"
216
217 config LOCKD
218         tristate
219         depends on FILE_LOCKING
220
221 config LOCKD_V4
222         bool
223         depends on NFSD_V3 || NFS_V3
224         depends on FILE_LOCKING
225         default y
226
227 config NFS_ACL_SUPPORT
228         tristate
229         select FS_POSIX_ACL
230
231 config NFS_COMMON
232         bool
233         depends on NFSD || NFS_FS
234         default y
235
236 source "net/sunrpc/Kconfig"
237 source "fs/smbfs/Kconfig"
238 source "fs/ceph/Kconfig"
239 source "fs/cifs/Kconfig"
240 source "fs/ncpfs/Kconfig"
241 source "fs/coda/Kconfig"
242 source "fs/afs/Kconfig"
243 source "fs/9p/Kconfig"
244
245 endif # NETWORK_FILESYSTEMS
246
247 if BLOCK
248 menu "Partition Types"
249
250 source "fs/partitions/Kconfig"
251
252 endmenu
253 endif
254
255 source "fs/nls/Kconfig"
256 source "fs/dlm/Kconfig"
257
258 endmenu