xref: /linux/fs/Kconfig (revision 2504075d383fcefd746dac42a0cd1c3bdc006bd1)
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"
46source "fs/nilfs2/Kconfig"
47
48endif # BLOCK
49
50config EXPORTFS
51	tristate
52
53config 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
61source "fs/notify/Kconfig"
62
63source "fs/quota/Kconfig"
64
65source "fs/autofs4/Kconfig"
66source "fs/fuse/Kconfig"
67
68config CUSE
69	tristate "Character device in Userspace support"
70	depends on FUSE_FS
71	help
72	  This FUSE extension allows character devices to be
73	  implemented in userspace.
74
75	  If you want to develop or use userspace character device
76	  based on CUSE, answer Y or M.
77
78config GENERIC_ACL
79	bool
80	select FS_POSIX_ACL
81
82menu "Caches"
83
84source "fs/fscache/Kconfig"
85source "fs/cachefiles/Kconfig"
86
87endmenu
88
89if BLOCK
90menu "CD-ROM/DVD Filesystems"
91
92source "fs/isofs/Kconfig"
93source "fs/udf/Kconfig"
94
95endmenu
96endif # BLOCK
97
98if BLOCK
99menu "DOS/FAT/NT Filesystems"
100
101source "fs/fat/Kconfig"
102source "fs/ntfs/Kconfig"
103
104endmenu
105endif # BLOCK
106
107menu "Pseudo filesystems"
108
109source "fs/proc/Kconfig"
110source "fs/sysfs/Kconfig"
111
112config TMPFS
113	bool "Virtual memory file system support (former shm fs)"
114	depends on SHMEM
115	help
116	  Tmpfs is a file system which keeps all files in virtual memory.
117
118	  Everything in tmpfs is temporary in the sense that no files will be
119	  created on your hard drive. The files live in memory and swap
120	  space. If you unmount a tmpfs instance, everything stored therein is
121	  lost.
122
123	  See <file:Documentation/filesystems/tmpfs.txt> for details.
124
125config TMPFS_POSIX_ACL
126	bool "Tmpfs POSIX Access Control Lists"
127	depends on TMPFS
128	select GENERIC_ACL
129	help
130	  POSIX Access Control Lists (ACLs) support permissions for users and
131	  groups beyond the owner/group/world scheme.
132
133	  To learn more about Access Control Lists, visit the POSIX ACLs for
134	  Linux website <http://acl.bestbits.at/>.
135
136	  If you don't know what Access Control Lists are, say N.
137
138config HUGETLBFS
139	bool "HugeTLB file system support"
140	depends on X86 || IA64 || SPARC64 || (S390 && 64BIT) || \
141		   SYS_SUPPORTS_HUGETLBFS || BROKEN
142	help
143	  hugetlbfs is a filesystem backing for HugeTLB pages, based on
144	  ramfs. For architectures that support it, say Y here and read
145	  <file:Documentation/vm/hugetlbpage.txt> for details.
146
147	  If unsure, say N.
148
149config HUGETLB_PAGE
150	def_bool HUGETLBFS
151
152source "fs/configfs/Kconfig"
153
154endmenu
155
156menuconfig MISC_FILESYSTEMS
157	bool "Miscellaneous filesystems"
158	default y
159	---help---
160	  Say Y here to get to see options for various miscellaneous
161	  filesystems, such as filesystems that came from other
162	  operating systems.
163
164	  This option alone does not add any kernel code.
165
166	  If you say N, all options in this submenu will be skipped and
167	  disabled; if unsure, say Y here.
168
169if MISC_FILESYSTEMS
170
171source "fs/adfs/Kconfig"
172source "fs/affs/Kconfig"
173source "fs/ecryptfs/Kconfig"
174source "fs/hfs/Kconfig"
175source "fs/hfsplus/Kconfig"
176source "fs/befs/Kconfig"
177source "fs/bfs/Kconfig"
178source "fs/efs/Kconfig"
179source "fs/jffs2/Kconfig"
180# UBIFS File system configuration
181source "fs/ubifs/Kconfig"
182source "fs/logfs/Kconfig"
183source "fs/cramfs/Kconfig"
184source "fs/squashfs/Kconfig"
185source "fs/freevxfs/Kconfig"
186source "fs/minix/Kconfig"
187source "fs/omfs/Kconfig"
188source "fs/hpfs/Kconfig"
189source "fs/qnx4/Kconfig"
190source "fs/romfs/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