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