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