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