xref: /openbmc/linux/fs/Kconfig (revision 8e9356c6)
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
71menu "Caches"
72
73source "fs/fscache/Kconfig"
74source "fs/cachefiles/Kconfig"
75
76endmenu
77
78if BLOCK
79menu "CD-ROM/DVD Filesystems"
80
81source "fs/isofs/Kconfig"
82source "fs/udf/Kconfig"
83
84endmenu
85endif # BLOCK
86
87if BLOCK
88menu "DOS/FAT/NT Filesystems"
89
90source "fs/fat/Kconfig"
91source "fs/ntfs/Kconfig"
92
93endmenu
94endif # BLOCK
95
96menu "Pseudo filesystems"
97
98source "fs/proc/Kconfig"
99source "fs/sysfs/Kconfig"
100
101config TMPFS
102	bool "Tmpfs virtual memory file system support (former shm fs)"
103	depends on SHMEM
104	help
105	  Tmpfs is a file system which keeps all files in virtual memory.
106
107	  Everything in tmpfs is temporary in the sense that no files will be
108	  created on your hard drive. The files live in memory and swap
109	  space. If you unmount a tmpfs instance, everything stored therein is
110	  lost.
111
112	  See <file:Documentation/filesystems/tmpfs.txt> for details.
113
114config TMPFS_POSIX_ACL
115	bool "Tmpfs POSIX Access Control Lists"
116	depends on TMPFS
117	select TMPFS_XATTR
118	select FS_POSIX_ACL
119	help
120	  POSIX Access Control Lists (ACLs) support additional access rights
121	  for users and groups beyond the standard owner/group/world scheme,
122	  and this option selects support for ACLs specifically for tmpfs
123	  filesystems.
124
125	  If you've selected TMPFS, it's possible that you'll also need
126	  this option as there are a number of Linux distros that require
127	  POSIX ACL support under /dev for certain features to work properly.
128	  For example, some distros need this feature for ALSA-related /dev
129	  files for sound to work properly.  In short, if you're not sure,
130	  say Y.
131
132	  To learn more about Access Control Lists, visit the POSIX ACLs for
133	  Linux website <http://acl.bestbits.at/>.
134
135config TMPFS_XATTR
136	bool "Tmpfs extended attributes"
137	depends on TMPFS
138	default n
139	help
140	  Extended attributes are name:value pairs associated with inodes by
141	  the kernel or by users (see the attr(5) manual page, or visit
142	  <http://acl.bestbits.at/> for details).
143
144	  Currently this enables support for the trusted.* and
145	  security.* namespaces.
146
147	  You need this for POSIX ACL support on tmpfs.
148
149	  If unsure, say N.
150
151config HUGETLBFS
152	bool "HugeTLB file system support"
153	depends on X86 || IA64 || SPARC64 || (S390 && 64BIT) || \
154		   SYS_SUPPORTS_HUGETLBFS || BROKEN
155	help
156	  hugetlbfs is a filesystem backing for HugeTLB pages, based on
157	  ramfs. For architectures that support it, say Y here and read
158	  <file:Documentation/vm/hugetlbpage.txt> for details.
159
160	  If unsure, say N.
161
162config HUGETLB_PAGE
163	def_bool HUGETLBFS
164
165source "fs/configfs/Kconfig"
166
167endmenu
168
169menuconfig MISC_FILESYSTEMS
170	bool "Miscellaneous filesystems"
171	default y
172	---help---
173	  Say Y here to get to see options for various miscellaneous
174	  filesystems, such as filesystems that came from other
175	  operating systems.
176
177	  This option alone does not add any kernel code.
178
179	  If you say N, all options in this submenu will be skipped and
180	  disabled; if unsure, say Y here.
181
182if MISC_FILESYSTEMS
183
184source "fs/adfs/Kconfig"
185source "fs/affs/Kconfig"
186source "fs/ecryptfs/Kconfig"
187source "fs/hfs/Kconfig"
188source "fs/hfsplus/Kconfig"
189source "fs/befs/Kconfig"
190source "fs/bfs/Kconfig"
191source "fs/efs/Kconfig"
192source "fs/jffs2/Kconfig"
193# UBIFS File system configuration
194source "fs/ubifs/Kconfig"
195source "fs/logfs/Kconfig"
196source "fs/cramfs/Kconfig"
197source "fs/squashfs/Kconfig"
198source "fs/freevxfs/Kconfig"
199source "fs/minix/Kconfig"
200source "fs/omfs/Kconfig"
201source "fs/hpfs/Kconfig"
202source "fs/qnx4/Kconfig"
203source "fs/qnx6/Kconfig"
204source "fs/romfs/Kconfig"
205source "fs/pstore/Kconfig"
206source "fs/sysv/Kconfig"
207source "fs/ufs/Kconfig"
208source "fs/exofs/Kconfig"
209source "fs/f2fs/Kconfig"
210source "fs/efivarfs/Kconfig"
211
212endif # MISC_FILESYSTEMS
213
214source "fs/exofs/Kconfig.ore"
215
216menuconfig NETWORK_FILESYSTEMS
217	bool "Network File Systems"
218	default y
219	depends on NET
220	---help---
221	  Say Y here to get to see options for network filesystems and
222	  filesystem-related networking code, such as NFS daemon and
223	  RPCSEC security modules.
224
225	  This option alone does not add any kernel code.
226
227	  If you say N, all options in this submenu will be skipped and
228	  disabled; if unsure, say Y here.
229
230if NETWORK_FILESYSTEMS
231
232source "fs/nfs/Kconfig"
233source "fs/nfsd/Kconfig"
234
235config LOCKD
236	tristate
237	depends on FILE_LOCKING
238
239config LOCKD_V4
240	bool
241	depends on NFSD_V3 || NFS_V3
242	depends on FILE_LOCKING
243	default y
244
245config NFS_ACL_SUPPORT
246	tristate
247	select FS_POSIX_ACL
248
249config NFS_COMMON
250	bool
251	depends on NFSD || NFS_FS
252	default y
253
254source "net/sunrpc/Kconfig"
255source "fs/ceph/Kconfig"
256source "fs/cifs/Kconfig"
257source "fs/ncpfs/Kconfig"
258source "fs/coda/Kconfig"
259source "fs/afs/Kconfig"
260source "fs/9p/Kconfig"
261
262endif # NETWORK_FILESYSTEMS
263
264source "fs/nls/Kconfig"
265source "fs/dlm/Kconfig"
266
267endmenu
268