xref: /openbmc/linux/fs/Kconfig (revision 7fe2f639)
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	tristate
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 TMPFS_XATTR
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 TMPFS_XATTR
139	bool "Tmpfs extended attributes"
140	depends on TMPFS
141	default n
142	help
143	  Extended attributes are name:value pairs associated with inodes by
144	  the kernel or by users (see the attr(5) manual page, or visit
145	  <http://acl.bestbits.at/> for details).
146
147	  Currently this enables support for the trusted.* and
148	  security.* namespaces.
149
150	  You need this for POSIX ACL support on tmpfs.
151
152	  If unsure, say N.
153
154config HUGETLBFS
155	bool "HugeTLB file system support"
156	depends on X86 || IA64 || SPARC64 || (S390 && 64BIT) || \
157		   SYS_SUPPORTS_HUGETLBFS || BROKEN
158	help
159	  hugetlbfs is a filesystem backing for HugeTLB pages, based on
160	  ramfs. For architectures that support it, say Y here and read
161	  <file:Documentation/vm/hugetlbpage.txt> for details.
162
163	  If unsure, say N.
164
165config HUGETLB_PAGE
166	def_bool HUGETLBFS
167
168source "fs/configfs/Kconfig"
169
170endmenu
171
172menuconfig MISC_FILESYSTEMS
173	bool "Miscellaneous filesystems"
174	default y
175	---help---
176	  Say Y here to get to see options for various miscellaneous
177	  filesystems, such as filesystems that came from other
178	  operating systems.
179
180	  This option alone does not add any kernel code.
181
182	  If you say N, all options in this submenu will be skipped and
183	  disabled; if unsure, say Y here.
184
185if MISC_FILESYSTEMS
186
187source "fs/adfs/Kconfig"
188source "fs/affs/Kconfig"
189source "fs/ecryptfs/Kconfig"
190source "fs/hfs/Kconfig"
191source "fs/hfsplus/Kconfig"
192source "fs/befs/Kconfig"
193source "fs/bfs/Kconfig"
194source "fs/efs/Kconfig"
195source "fs/jffs2/Kconfig"
196# UBIFS File system configuration
197source "fs/ubifs/Kconfig"
198source "fs/logfs/Kconfig"
199source "fs/cramfs/Kconfig"
200source "fs/squashfs/Kconfig"
201source "fs/freevxfs/Kconfig"
202source "fs/minix/Kconfig"
203source "fs/omfs/Kconfig"
204source "fs/hpfs/Kconfig"
205source "fs/qnx4/Kconfig"
206source "fs/romfs/Kconfig"
207source "fs/pstore/Kconfig"
208source "fs/sysv/Kconfig"
209source "fs/ufs/Kconfig"
210source "fs/exofs/Kconfig"
211
212endif # MISC_FILESYSTEMS
213
214menuconfig NETWORK_FILESYSTEMS
215	bool "Network File Systems"
216	default y
217	depends on NET
218	---help---
219	  Say Y here to get to see options for network filesystems and
220	  filesystem-related networking code, such as NFS daemon and
221	  RPCSEC security modules.
222
223	  This option alone does not add any kernel code.
224
225	  If you say N, all options in this submenu will be skipped and
226	  disabled; if unsure, say Y here.
227
228if NETWORK_FILESYSTEMS
229
230source "fs/nfs/Kconfig"
231source "fs/nfsd/Kconfig"
232
233config LOCKD
234	tristate
235	depends on FILE_LOCKING
236
237config LOCKD_V4
238	bool
239	depends on NFSD_V3 || NFS_V3
240	depends on FILE_LOCKING
241	default y
242
243config NFS_ACL_SUPPORT
244	tristate
245	select FS_POSIX_ACL
246
247config NFS_COMMON
248	bool
249	depends on NFSD || NFS_FS
250	default y
251
252source "net/sunrpc/Kconfig"
253source "fs/ceph/Kconfig"
254source "fs/cifs/Kconfig"
255source "fs/ncpfs/Kconfig"
256source "fs/coda/Kconfig"
257source "fs/afs/Kconfig"
258source "fs/9p/Kconfig"
259
260endif # NETWORK_FILESYSTEMS
261
262if BLOCK
263menu "Partition Types"
264
265source "fs/partitions/Kconfig"
266
267endmenu
268endif
269
270source "fs/nls/Kconfig"
271source "fs/dlm/Kconfig"
272
273endmenu
274