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