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