Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
[platform/kernel/linux-starfive.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