fs/Kconfig: move befs out
[pandora-kernel.git] / fs / Kconfig
1 #
2 # File system configuration
3 #
4
5 menu "File systems"
6
7 if BLOCK
8
9 source "fs/ext2/Kconfig"
10 source "fs/ext3/Kconfig"
11 source "fs/ext4/Kconfig"
12
13 config FS_XIP
14 # execute in place
15         bool
16         depends on EXT2_FS_XIP
17         default y
18
19 source "fs/jbd/Kconfig"
20 source "fs/jbd2/Kconfig"
21
22 config FS_MBCACHE
23 # Meta block cache for Extended Attributes (ext2/ext3/ext4)
24         tristate
25         default y if EXT2_FS=y && EXT2_FS_XATTR
26         default y if EXT3_FS=y && EXT3_FS_XATTR
27         default y if EXT4_FS=y && EXT4_FS_XATTR
28         default m if EXT2_FS_XATTR || EXT3_FS_XATTR || EXT4_FS_XATTR
29
30 source "fs/reiserfs/Kconfig"
31 source "fs/jfs/Kconfig"
32
33 config FS_POSIX_ACL
34 # Posix ACL utility routines (for now, only ext2/ext3/jfs/reiserfs/nfs4)
35 #
36 # NOTE: you can implement Posix ACLs without these helpers (XFS does).
37 #       Never use this symbol for ifdefs.
38 #
39         bool
40         default n
41
42 config FILE_LOCKING
43         bool "Enable POSIX file locking API" if EMBEDDED
44         default y
45         help
46           This option enables standard file locking support, required
47           for filesystems like NFS and for the flock() system
48           call. Disabling this option saves about 11k.
49
50 source "fs/xfs/Kconfig"
51 source "fs/gfs2/Kconfig"
52 source "fs/ocfs2/Kconfig"
53 source "fs/btrfs/Kconfig"
54
55 endif # BLOCK
56
57 source "fs/notify/Kconfig"
58
59 config QUOTA
60         bool "Quota support"
61         help
62           If you say Y here, you will be able to set per user limits for disk
63           usage (also called disk quotas). Currently, it works for the
64           ext2, ext3, and reiserfs file system. ext3 also supports journalled
65           quotas for which you don't need to run quotacheck(8) after an unclean
66           shutdown.
67           For further details, read the Quota mini-HOWTO, available from
68           <http://www.tldp.org/docs.html#howto>, or the documentation provided
69           with the quota tools. Probably the quota support is only useful for
70           multi user systems. If unsure, say N.
71
72 config QUOTA_NETLINK_INTERFACE
73         bool "Report quota messages through netlink interface"
74         depends on QUOTA && NET
75         help
76           If you say Y here, quota warnings (about exceeding softlimit, reaching
77           hardlimit, etc.) will be reported through netlink interface. If unsure,
78           say Y.
79
80 config PRINT_QUOTA_WARNING
81         bool "Print quota warnings to console (OBSOLETE)"
82         depends on QUOTA
83         default y
84         help
85           If you say Y here, quota warnings (about exceeding softlimit, reaching
86           hardlimit, etc.) will be printed to the process' controlling terminal.
87           Note that this behavior is currently deprecated and may go away in
88           future. Please use notification via netlink socket instead.
89
90 # Generic support for tree structured quota files. Seleted when needed.
91 config QUOTA_TREE
92          tristate
93
94 config QFMT_V1
95         tristate "Old quota format support"
96         depends on QUOTA
97         help
98           This quota format was (is) used by kernels earlier than 2.4.22. If
99           you have quota working and you don't want to convert to new quota
100           format say Y here.
101
102 config QFMT_V2
103         tristate "Quota format v2 support"
104         depends on QUOTA
105         select QUOTA_TREE
106         help
107           This quota format allows using quotas with 32-bit UIDs/GIDs. If you
108           need this functionality say Y here.
109
110 config QUOTACTL
111         bool
112         depends on XFS_QUOTA || QUOTA
113         default y
114
115 source "fs/autofs/Kconfig"
116 source "fs/autofs4/Kconfig"
117 source "fs/fuse/Kconfig"
118
119 config GENERIC_ACL
120         bool
121         select FS_POSIX_ACL
122
123 if BLOCK
124 menu "CD-ROM/DVD Filesystems"
125
126 source "fs/isofs/Kconfig"
127 source "fs/udf/Kconfig"
128
129 endmenu
130 endif # BLOCK
131
132 if BLOCK
133 menu "DOS/FAT/NT Filesystems"
134
135 source "fs/fat/Kconfig"
136 source "fs/ntfs/Kconfig"
137
138 endmenu
139 endif # BLOCK
140
141 menu "Pseudo filesystems"
142
143 source "fs/proc/Kconfig"
144 source "fs/sysfs/Kconfig"
145
146 config TMPFS
147         bool "Virtual memory file system support (former shm fs)"
148         help
149           Tmpfs is a file system which keeps all files in virtual memory.
150
151           Everything in tmpfs is temporary in the sense that no files will be
152           created on your hard drive. The files live in memory and swap
153           space. If you unmount a tmpfs instance, everything stored therein is
154           lost.
155
156           See <file:Documentation/filesystems/tmpfs.txt> for details.
157
158 config TMPFS_POSIX_ACL
159         bool "Tmpfs POSIX Access Control Lists"
160         depends on TMPFS
161         select GENERIC_ACL
162         help
163           POSIX Access Control Lists (ACLs) support permissions for users and
164           groups beyond the owner/group/world scheme.
165
166           To learn more about Access Control Lists, visit the POSIX ACLs for
167           Linux website <http://acl.bestbits.at/>.
168
169           If you don't know what Access Control Lists are, say N.
170
171 config HUGETLBFS
172         bool "HugeTLB file system support"
173         depends on X86 || IA64 || PPC64 || SPARC64 || (SUPERH && MMU) || \
174                    (S390 && 64BIT) || BROKEN
175         help
176           hugetlbfs is a filesystem backing for HugeTLB pages, based on
177           ramfs. For architectures that support it, say Y here and read
178           <file:Documentation/vm/hugetlbpage.txt> for details.
179
180           If unsure, say N.
181
182 config HUGETLB_PAGE
183         def_bool HUGETLBFS
184
185 source "fs/configfs/Kconfig"
186
187 endmenu
188
189 menuconfig MISC_FILESYSTEMS
190         bool "Miscellaneous filesystems"
191         default y
192         ---help---
193           Say Y here to get to see options for various miscellaneous
194           filesystems, such as filesystems that came from other
195           operating systems.
196
197           This option alone does not add any kernel code.
198
199           If you say N, all options in this submenu will be skipped and
200           disabled; if unsure, say Y here.
201
202 if MISC_FILESYSTEMS
203
204 source "fs/adfs/Kconfig"
205 source "fs/affs/Kconfig"
206 source "fs/ecryptfs/Kconfig"
207 source "fs/hfs/Kconfig"
208 source "fs/hfsplus/Kconfig"
209 source "fs/befs/Kconfig"
210
211 config BFS_FS
212         tristate "BFS file system support (EXPERIMENTAL)"
213         depends on BLOCK && EXPERIMENTAL
214         help
215           Boot File System (BFS) is a file system used under SCO UnixWare to
216           allow the bootloader access to the kernel image and other important
217           files during the boot process.  It is usually mounted under /stand
218           and corresponds to the slice marked as "STAND" in the UnixWare
219           partition.  You should say Y if you want to read or write the files
220           on your /stand slice from within Linux.  You then also need to say Y
221           to "UnixWare slices support", below.  More information about the BFS
222           file system is contained in the file
223           <file:Documentation/filesystems/bfs.txt>.
224
225           If you don't know what this is about, say N.
226
227           To compile this as a module, choose M here: the module will be called
228           bfs.  Note that the file system of your root partition (the one
229           containing the directory /) cannot be compiled as a module.
230
231
232
233 config EFS_FS
234         tristate "EFS file system support (read only) (EXPERIMENTAL)"
235         depends on BLOCK && EXPERIMENTAL
236         help
237           EFS is an older file system used for non-ISO9660 CD-ROMs and hard
238           disk partitions by SGI's IRIX operating system (IRIX 6.0 and newer
239           uses the XFS file system for hard disk partitions however).
240
241           This implementation only offers read-only access. If you don't know
242           what all this is about, it's safe to say N. For more information
243           about EFS see its home page at <http://aeschi.ch.eu.org/efs/>.
244
245           To compile the EFS file system support as a module, choose M here: the
246           module will be called efs.
247
248 source "fs/jffs2/Kconfig"
249 # UBIFS File system configuration
250 source "fs/ubifs/Kconfig"
251
252 config CRAMFS
253         tristate "Compressed ROM file system support (cramfs)"
254         depends on BLOCK
255         select ZLIB_INFLATE
256         help
257           Saying Y here includes support for CramFs (Compressed ROM File
258           System).  CramFs is designed to be a simple, small, and compressed
259           file system for ROM based embedded systems.  CramFs is read-only,
260           limited to 256MB file systems (with 16MB files), and doesn't support
261           16/32 bits uid/gid, hard links and timestamps.
262
263           See <file:Documentation/filesystems/cramfs.txt> and
264           <file:fs/cramfs/README> for further information.
265
266           To compile this as a module, choose M here: the module will be called
267           cramfs.  Note that the root file system (the one containing the
268           directory /) cannot be compiled as a module.
269
270           If unsure, say N.
271
272 config SQUASHFS
273         tristate "SquashFS 4.0 - Squashed file system support"
274         depends on BLOCK
275         select ZLIB_INFLATE
276         help
277           Saying Y here includes support for SquashFS 4.0 (a Compressed
278           Read-Only File System).  Squashfs is a highly compressed read-only
279           filesystem for Linux.  It uses zlib compression to compress both
280           files, inodes and directories.  Inodes in the system are very small
281           and all blocks are packed to minimise data overhead. Block sizes
282           greater than 4K are supported up to a maximum of 1 Mbytes (default
283           block size 128K).  SquashFS 4.0 supports 64 bit filesystems and files
284           (larger than 4GB), full uid/gid information, hard links and
285           timestamps.  
286
287           Squashfs is intended for general read-only filesystem use, for
288           archival use (i.e. in cases where a .tar.gz file may be used), and in
289           embedded systems where low overhead is needed.  Further information
290           and tools are available from http://squashfs.sourceforge.net.
291
292           If you want to compile this as a module ( = code which can be
293           inserted in and removed from the running kernel whenever you want),
294           say M here and read <file:Documentation/modules.txt>.  The module
295           will be called squashfs.  Note that the root file system (the one
296           containing the directory /) cannot be compiled as a module.
297
298           If unsure, say N.
299
300 config SQUASHFS_EMBEDDED
301
302         bool "Additional option for memory-constrained systems" 
303         depends on SQUASHFS
304         default n
305         help
306           Saying Y here allows you to specify cache size.
307
308           If unsure, say N.
309
310 config SQUASHFS_FRAGMENT_CACHE_SIZE
311         int "Number of fragments cached" if SQUASHFS_EMBEDDED
312         depends on SQUASHFS
313         default "3"
314         help
315           By default SquashFS caches the last 3 fragments read from
316           the filesystem.  Increasing this amount may mean SquashFS
317           has to re-read fragments less often from disk, at the expense
318           of extra system memory.  Decreasing this amount will mean
319           SquashFS uses less memory at the expense of extra reads from disk.
320
321           Note there must be at least one cached fragment.  Anything
322           much more than three will probably not make much difference.
323
324 config VXFS_FS
325         tristate "FreeVxFS file system support (VERITAS VxFS(TM) compatible)"
326         depends on BLOCK
327         help
328           FreeVxFS is a file system driver that support the VERITAS VxFS(TM)
329           file system format.  VERITAS VxFS(TM) is the standard file system
330           of SCO UnixWare (and possibly others) and optionally available
331           for Sunsoft Solaris, HP-UX and many other operating systems.
332           Currently only readonly access is supported.
333
334           NOTE: the file system type as used by mount(1), mount(2) and
335           fstab(5) is 'vxfs' as it describes the file system format, not
336           the actual driver.
337
338           To compile this as a module, choose M here: the module will be
339           called freevxfs.  If unsure, say N.
340
341 config MINIX_FS
342         tristate "Minix file system support"
343         depends on BLOCK
344         help
345           Minix is a simple operating system used in many classes about OS's.
346           The minix file system (method to organize files on a hard disk
347           partition or a floppy disk) was the original file system for Linux,
348           but has been superseded by the second extended file system ext2fs.
349           You don't want to use the minix file system on your hard disk
350           because of certain built-in restrictions, but it is sometimes found
351           on older Linux floppy disks.  This option will enlarge your kernel
352           by about 28 KB. If unsure, say N.
353
354           To compile this file system support as a module, choose M here: the
355           module will be called minix.  Note that the file system of your root
356           partition (the one containing the directory /) cannot be compiled as
357           a module.
358
359 config OMFS_FS
360         tristate "SonicBlue Optimized MPEG File System support"
361         depends on BLOCK
362         select CRC_ITU_T
363         help
364           This is the proprietary file system used by the Rio Karma music
365           player and ReplayTV DVR.  Despite the name, this filesystem is not
366           more efficient than a standard FS for MPEG files, in fact likely
367           the opposite is true.  Say Y if you have either of these devices
368           and wish to mount its disk.
369
370           To compile this file system support as a module, choose M here: the
371           module will be called omfs.  If unsure, say N.
372
373 config HPFS_FS
374         tristate "OS/2 HPFS file system support"
375         depends on BLOCK
376         help
377           OS/2 is IBM's operating system for PC's, the same as Warp, and HPFS
378           is the file system used for organizing files on OS/2 hard disk
379           partitions. Say Y if you want to be able to read files from and
380           write files to an OS/2 HPFS partition on your hard drive. OS/2
381           floppies however are in regular MSDOS format, so you don't need this
382           option in order to be able to read them. Read
383           <file:Documentation/filesystems/hpfs.txt>.
384
385           To compile this file system support as a module, choose M here: the
386           module will be called hpfs.  If unsure, say N.
387
388
389 config QNX4FS_FS
390         tristate "QNX4 file system support (read only)"
391         depends on BLOCK
392         help
393           This is the file system used by the real-time operating systems
394           QNX 4 and QNX 6 (the latter is also called QNX RTP).
395           Further information is available at <http://www.qnx.com/>.
396           Say Y if you intend to mount QNX hard disks or floppies.
397           Unless you say Y to "QNX4FS read-write support" below, you will
398           only be able to read these file systems.
399
400           To compile this file system support as a module, choose M here: the
401           module will be called qnx4.
402
403           If you don't know whether you need it, then you don't need it:
404           answer N.
405
406 config QNX4FS_RW
407         bool "QNX4FS write support (DANGEROUS)"
408         depends on QNX4FS_FS && EXPERIMENTAL && BROKEN
409         help
410           Say Y if you want to test write support for QNX4 file systems.
411
412           It's currently broken, so for now:
413           answer N.
414
415 config ROMFS_FS
416         tristate "ROM file system support"
417         depends on BLOCK
418         ---help---
419           This is a very small read-only file system mainly intended for
420           initial ram disks of installation disks, but it could be used for
421           other read-only media as well.  Read
422           <file:Documentation/filesystems/romfs.txt> for details.
423
424           To compile this file system support as a module, choose M here: the
425           module will be called romfs.  Note that the file system of your
426           root partition (the one containing the directory /) cannot be a
427           module.
428
429           If you don't know whether you need it, then you don't need it:
430           answer N.
431
432
433 config SYSV_FS
434         tristate "System V/Xenix/V7/Coherent file system support"
435         depends on BLOCK
436         help
437           SCO, Xenix and Coherent are commercial Unix systems for Intel
438           machines, and Version 7 was used on the DEC PDP-11. Saying Y
439           here would allow you to read from their floppies and hard disk
440           partitions.
441
442           If you have floppies or hard disk partitions like that, it is likely
443           that they contain binaries from those other Unix systems; in order
444           to run these binaries, you will want to install linux-abi which is
445           a set of kernel modules that lets you run SCO, Xenix, Wyse,
446           UnixWare, Dell Unix and System V programs under Linux.  It is
447           available via FTP (user: ftp) from
448           <ftp://ftp.openlinux.org/pub/people/hch/linux-abi/>).
449           NOTE: that will work only for binaries from Intel-based systems;
450           PDP ones will have to wait until somebody ports Linux to -11 ;-)
451
452           If you only intend to mount files from some other Unix over the
453           network using NFS, you don't need the System V file system support
454           (but you need NFS file system support obviously).
455
456           Note that this option is generally not needed for floppies, since a
457           good portable way to transport files and directories between unixes
458           (and even other operating systems) is given by the tar program ("man
459           tar" or preferably "info tar").  Note also that this option has
460           nothing whatsoever to do with the option "System V IPC". Read about
461           the System V file system in
462           <file:Documentation/filesystems/sysv-fs.txt>.
463           Saying Y here will enlarge your kernel by about 27 KB.
464
465           To compile this as a module, choose M here: the module will be called
466           sysv.
467
468           If you haven't heard about all of this before, it's safe to say N.
469
470
471 config UFS_FS
472         tristate "UFS file system support (read only)"
473         depends on BLOCK
474         help
475           BSD and derivate versions of Unix (such as SunOS, FreeBSD, NetBSD,
476           OpenBSD and NeXTstep) use a file system called UFS. Some System V
477           Unixes can create and mount hard disk partitions and diskettes using
478           this file system as well. Saying Y here will allow you to read from
479           these partitions; if you also want to write to them, say Y to the
480           experimental "UFS file system write support", below. Please read the
481           file <file:Documentation/filesystems/ufs.txt> for more information.
482
483           The recently released UFS2 variant (used in FreeBSD 5.x) is
484           READ-ONLY supported.
485
486           Note that this option is generally not needed for floppies, since a
487           good portable way to transport files and directories between unixes
488           (and even other operating systems) is given by the tar program ("man
489           tar" or preferably "info tar").
490
491           When accessing NeXTstep files, you may need to convert them from the
492           NeXT character set to the Latin1 character set; use the program
493           recode ("info recode") for this purpose.
494
495           To compile the UFS file system support as a module, choose M here: the
496           module will be called ufs.
497
498           If you haven't heard about all of this before, it's safe to say N.
499
500 config UFS_FS_WRITE
501         bool "UFS file system write support (DANGEROUS)"
502         depends on UFS_FS && EXPERIMENTAL
503         help
504           Say Y here if you want to try writing to UFS partitions. This is
505           experimental, so you should back up your UFS partitions beforehand.
506
507 config UFS_DEBUG
508         bool "UFS debugging"
509         depends on UFS_FS
510         help
511           If you are experiencing any problems with the UFS filesystem, say
512           Y here.  This will result in _many_ additional debugging messages to be
513           written to the system log.
514
515 endif # MISC_FILESYSTEMS
516
517 menuconfig NETWORK_FILESYSTEMS
518         bool "Network File Systems"
519         default y
520         depends on NET
521         ---help---
522           Say Y here to get to see options for network filesystems and
523           filesystem-related networking code, such as NFS daemon and
524           RPCSEC security modules.
525
526           This option alone does not add any kernel code.
527
528           If you say N, all options in this submenu will be skipped and
529           disabled; if unsure, say Y here.
530
531 if NETWORK_FILESYSTEMS
532
533 config NFS_FS
534         tristate "NFS client support"
535         depends on INET
536         select LOCKD
537         select SUNRPC
538         select NFS_ACL_SUPPORT if NFS_V3_ACL
539         help
540           Choose Y here if you want to access files residing on other
541           computers using Sun's Network File System protocol.  To compile
542           this file system support as a module, choose M here: the module
543           will be called nfs.
544
545           To mount file systems exported by NFS servers, you also need to
546           install the user space mount.nfs command which can be found in
547           the Linux nfs-utils package, available from http://linux-nfs.org/.
548           Information about using the mount command is available in the
549           mount(8) man page.  More detail about the Linux NFS client
550           implementation is available via the nfs(5) man page.
551
552           Below you can choose which versions of the NFS protocol are
553           available in the kernel to mount NFS servers.  Support for NFS
554           version 2 (RFC 1094) is always available when NFS_FS is selected.
555
556           To configure a system which mounts its root file system via NFS
557           at boot time, say Y here, select "Kernel level IP
558           autoconfiguration" in the NETWORK menu, and select "Root file
559           system on NFS" below.  You cannot compile this file system as a
560           module in this case.
561
562           If unsure, say N.
563
564 config NFS_V3
565         bool "NFS client support for NFS version 3"
566         depends on NFS_FS
567         help
568           This option enables support for version 3 of the NFS protocol
569           (RFC 1813) in the kernel's NFS client.
570
571           If unsure, say Y.
572
573 config NFS_V3_ACL
574         bool "NFS client support for the NFSv3 ACL protocol extension"
575         depends on NFS_V3
576         help
577           Some NFS servers support an auxiliary NFSv3 ACL protocol that
578           Sun added to Solaris but never became an official part of the
579           NFS version 3 protocol.  This protocol extension allows
580           applications on NFS clients to manipulate POSIX Access Control
581           Lists on files residing on NFS servers.  NFS servers enforce
582           ACLs on local files whether this protocol is available or not.
583
584           Choose Y here if your NFS server supports the Solaris NFSv3 ACL
585           protocol extension and you want your NFS client to allow
586           applications to access and modify ACLs on files on the server.
587
588           Most NFS servers don't support the Solaris NFSv3 ACL protocol
589           extension.  You can choose N here or specify the "noacl" mount
590           option to prevent your NFS client from trying to use the NFSv3
591           ACL protocol.
592
593           If unsure, say N.
594
595 config NFS_V4
596         bool "NFS client support for NFS version 4 (EXPERIMENTAL)"
597         depends on NFS_FS && EXPERIMENTAL
598         select RPCSEC_GSS_KRB5
599         help
600           This option enables support for version 4 of the NFS protocol
601           (RFC 3530) in the kernel's NFS client.
602
603           To mount NFS servers using NFSv4, you also need to install user
604           space programs which can be found in the Linux nfs-utils package,
605           available from http://linux-nfs.org/.
606
607           If unsure, say N.
608
609 config ROOT_NFS
610         bool "Root file system on NFS"
611         depends on NFS_FS=y && IP_PNP
612         help
613           If you want your system to mount its root file system via NFS,
614           choose Y here.  This is common practice for managing systems
615           without local permanent storage.  For details, read
616           <file:Documentation/filesystems/nfsroot.txt>.
617
618           Most people say N here.
619
620 config NFSD
621         tristate "NFS server support"
622         depends on INET
623         select LOCKD
624         select SUNRPC
625         select EXPORTFS
626         select NFS_ACL_SUPPORT if NFSD_V2_ACL
627         help
628           Choose Y here if you want to allow other computers to access
629           files residing on this system using Sun's Network File System
630           protocol.  To compile the NFS server support as a module,
631           choose M here: the module will be called nfsd.
632
633           You may choose to use a user-space NFS server instead, in which
634           case you can choose N here.
635
636           To export local file systems using NFS, you also need to install
637           user space programs which can be found in the Linux nfs-utils
638           package, available from http://linux-nfs.org/.  More detail about
639           the Linux NFS server implementation is available via the
640           exports(5) man page.
641
642           Below you can choose which versions of the NFS protocol are
643           available to clients mounting the NFS server on this system.
644           Support for NFS version 2 (RFC 1094) is always available when
645           CONFIG_NFSD is selected.
646
647           If unsure, say N.
648
649 config NFSD_V2_ACL
650         bool
651         depends on NFSD
652
653 config NFSD_V3
654         bool "NFS server support for NFS version 3"
655         depends on NFSD
656         help
657           This option enables support in your system's NFS server for
658           version 3 of the NFS protocol (RFC 1813).
659
660           If unsure, say Y.
661
662 config NFSD_V3_ACL
663         bool "NFS server support for the NFSv3 ACL protocol extension"
664         depends on NFSD_V3
665         select NFSD_V2_ACL
666         help
667           Solaris NFS servers support an auxiliary NFSv3 ACL protocol that
668           never became an official part of the NFS version 3 protocol.
669           This protocol extension allows applications on NFS clients to
670           manipulate POSIX Access Control Lists on files residing on NFS
671           servers.  NFS servers enforce POSIX ACLs on local files whether
672           this protocol is available or not.
673
674           This option enables support in your system's NFS server for the
675           NFSv3 ACL protocol extension allowing NFS clients to manipulate
676           POSIX ACLs on files exported by your system's NFS server.  NFS
677           clients which support the Solaris NFSv3 ACL protocol can then
678           access and modify ACLs on your NFS server.
679
680           To store ACLs on your NFS server, you also need to enable ACL-
681           related CONFIG options for your local file systems of choice.
682
683           If unsure, say N.
684
685 config NFSD_V4
686         bool "NFS server support for NFS version 4 (EXPERIMENTAL)"
687         depends on NFSD && PROC_FS && EXPERIMENTAL
688         select NFSD_V3
689         select FS_POSIX_ACL
690         select RPCSEC_GSS_KRB5
691         help
692           This option enables support in your system's NFS server for
693           version 4 of the NFS protocol (RFC 3530).
694
695           To export files using NFSv4, you need to install additional user
696           space programs which can be found in the Linux nfs-utils package,
697           available from http://linux-nfs.org/.
698
699           If unsure, say N.
700
701 config LOCKD
702         tristate
703
704 config LOCKD_V4
705         bool
706         depends on NFSD_V3 || NFS_V3
707         default y
708
709 config EXPORTFS
710         tristate
711
712 config NFS_ACL_SUPPORT
713         tristate
714         select FS_POSIX_ACL
715
716 config NFS_COMMON
717         bool
718         depends on NFSD || NFS_FS
719         default y
720
721 config SUNRPC
722         tristate
723
724 config SUNRPC_GSS
725         tristate
726
727 config SUNRPC_XPRT_RDMA
728         tristate
729         depends on SUNRPC && INFINIBAND && EXPERIMENTAL
730         default SUNRPC && INFINIBAND
731         help
732           This option enables an RPC client transport capability that
733           allows the NFS client to mount servers via an RDMA-enabled
734           transport.
735
736           To compile RPC client RDMA transport support as a module,
737           choose M here: the module will be called xprtrdma.
738
739           If unsure, say N.
740
741 config SUNRPC_REGISTER_V4
742         bool "Register local RPC services via rpcbind v4 (EXPERIMENTAL)"
743         depends on SUNRPC && EXPERIMENTAL
744         default n
745         help
746           Sun added support for registering RPC services at an IPv6
747           address by creating two new versions of the rpcbind protocol
748           (RFC 1833).
749
750           This option enables support in the kernel RPC server for
751           registering kernel RPC services via version 4 of the rpcbind
752           protocol.  If you enable this option, you must run a portmapper
753           daemon that supports rpcbind protocol version 4.
754
755           Serving NFS over IPv6 from knfsd (the kernel's NFS server)
756           requires that you enable this option and use a portmapper that
757           supports rpcbind version 4.
758
759           If unsure, say N to get traditional behavior (register kernel
760           RPC services using only rpcbind version 2).  Distributions
761           using the legacy Linux portmapper daemon must say N here.
762
763 config RPCSEC_GSS_KRB5
764         tristate "Secure RPC: Kerberos V mechanism (EXPERIMENTAL)"
765         depends on SUNRPC && EXPERIMENTAL
766         select SUNRPC_GSS
767         select CRYPTO
768         select CRYPTO_MD5
769         select CRYPTO_DES
770         select CRYPTO_CBC
771         help
772           Choose Y here to enable Secure RPC using the Kerberos version 5
773           GSS-API mechanism (RFC 1964).
774
775           Secure RPC calls with Kerberos require an auxiliary user-space
776           daemon which may be found in the Linux nfs-utils package
777           available from http://linux-nfs.org/.  In addition, user-space
778           Kerberos support should be installed.
779
780           If unsure, say N.
781
782 config RPCSEC_GSS_SPKM3
783         tristate "Secure RPC: SPKM3 mechanism (EXPERIMENTAL)"
784         depends on SUNRPC && EXPERIMENTAL
785         select SUNRPC_GSS
786         select CRYPTO
787         select CRYPTO_MD5
788         select CRYPTO_DES
789         select CRYPTO_CAST5
790         select CRYPTO_CBC
791         help
792           Choose Y here to enable Secure RPC using the SPKM3 public key
793           GSS-API mechansim (RFC 2025).
794
795           Secure RPC calls with SPKM3 require an auxiliary userspace
796           daemon which may be found in the Linux nfs-utils package
797           available from http://linux-nfs.org/.
798
799           If unsure, say N.
800
801 config SMB_FS
802         tristate "SMB file system support (OBSOLETE, please use CIFS)"
803         depends on INET
804         select NLS
805         help
806           SMB (Server Message Block) is the protocol Windows for Workgroups
807           (WfW), Windows 95/98, Windows NT and OS/2 Lan Manager use to share
808           files and printers over local networks.  Saying Y here allows you to
809           mount their file systems (often called "shares" in this context) and
810           access them just like any other Unix directory.  Currently, this
811           works only if the Windows machines use TCP/IP as the underlying
812           transport protocol, and not NetBEUI.  For details, read
813           <file:Documentation/filesystems/smbfs.txt> and the SMB-HOWTO,
814           available from <http://www.tldp.org/docs.html#howto>.
815
816           Note: if you just want your box to act as an SMB *server* and make
817           files and printing services available to Windows clients (which need
818           to have a TCP/IP stack), you don't need to say Y here; you can use
819           the program SAMBA (available from <ftp://ftp.samba.org/pub/samba/>)
820           for that.
821
822           General information about how to connect Linux, Windows machines and
823           Macs is on the WWW at <http://www.eats.com/linux_mac_win.html>.
824
825           To compile the SMB support as a module, choose M here:
826           the module will be called smbfs.  Most people say N, however.
827
828 config SMB_NLS_DEFAULT
829         bool "Use a default NLS"
830         depends on SMB_FS
831         help
832           Enabling this will make smbfs use nls translations by default. You
833           need to specify the local charset (CONFIG_NLS_DEFAULT) in the nls
834           settings and you need to give the default nls for the SMB server as
835           CONFIG_SMB_NLS_REMOTE.
836
837           The nls settings can be changed at mount time, if your smbmount
838           supports that, using the codepage and iocharset parameters.
839
840           smbmount from samba 2.2.0 or later supports this.
841
842 config SMB_NLS_REMOTE
843         string "Default Remote NLS Option"
844         depends on SMB_NLS_DEFAULT
845         default "cp437"
846         help
847           This setting allows you to specify a default value for which
848           codepage the server uses. If this field is left blank no
849           translations will be done by default. The local codepage/charset
850           default to CONFIG_NLS_DEFAULT.
851
852           The nls settings can be changed at mount time, if your smbmount
853           supports that, using the codepage and iocharset parameters.
854
855           smbmount from samba 2.2.0 or later supports this.
856
857 source "fs/cifs/Kconfig"
858
859 config NCP_FS
860         tristate "NCP file system support (to mount NetWare volumes)"
861         depends on IPX!=n || INET
862         help
863           NCP (NetWare Core Protocol) is a protocol that runs over IPX and is
864           used by Novell NetWare clients to talk to file servers.  It is to
865           IPX what NFS is to TCP/IP, if that helps.  Saying Y here allows you
866           to mount NetWare file server volumes and to access them just like
867           any other Unix directory.  For details, please read the file
868           <file:Documentation/filesystems/ncpfs.txt> in the kernel source and
869           the IPX-HOWTO from <http://www.tldp.org/docs.html#howto>.
870
871           You do not have to say Y here if you want your Linux box to act as a
872           file *server* for Novell NetWare clients.
873
874           General information about how to connect Linux, Windows machines and
875           Macs is on the WWW at <http://www.eats.com/linux_mac_win.html>.
876
877           To compile this as a module, choose M here: the module will be called
878           ncpfs.  Say N unless you are connected to a Novell network.
879
880 source "fs/ncpfs/Kconfig"
881
882 config CODA_FS
883         tristate "Coda file system support (advanced network fs)"
884         depends on INET
885         help
886           Coda is an advanced network file system, similar to NFS in that it
887           enables you to mount file systems of a remote server and access them
888           with regular Unix commands as if they were sitting on your hard
889           disk.  Coda has several advantages over NFS: support for
890           disconnected operation (e.g. for laptops), read/write server
891           replication, security model for authentication and encryption,
892           persistent client caches and write back caching.
893
894           If you say Y here, your Linux box will be able to act as a Coda
895           *client*.  You will need user level code as well, both for the
896           client and server.  Servers are currently user level, i.e. they need
897           no kernel support.  Please read
898           <file:Documentation/filesystems/coda.txt> and check out the Coda
899           home page <http://www.coda.cs.cmu.edu/>.
900
901           To compile the coda client support as a module, choose M here: the
902           module will be called coda.
903
904 config AFS_FS
905         tristate "Andrew File System support (AFS) (EXPERIMENTAL)"
906         depends on INET && EXPERIMENTAL
907         select AF_RXRPC
908         help
909           If you say Y here, you will get an experimental Andrew File System
910           driver. It currently only supports unsecured read-only AFS access.
911
912           See <file:Documentation/filesystems/afs.txt> for more information.
913
914           If unsure, say N.
915
916 config AFS_DEBUG
917         bool "AFS dynamic debugging"
918         depends on AFS_FS
919         help
920           Say Y here to make runtime controllable debugging messages appear.
921
922           See <file:Documentation/filesystems/afs.txt> for more information.
923
924           If unsure, say N.
925
926 config 9P_FS
927         tristate "Plan 9 Resource Sharing Support (9P2000) (Experimental)"
928         depends on INET && NET_9P && EXPERIMENTAL
929         help
930           If you say Y here, you will get experimental support for
931           Plan 9 resource sharing via the 9P2000 protocol.
932
933           See <http://v9fs.sf.net> for more information.
934
935           If unsure, say N.
936
937 endif # NETWORK_FILESYSTEMS
938
939 if BLOCK
940 menu "Partition Types"
941
942 source "fs/partitions/Kconfig"
943
944 endmenu
945 endif
946
947 source "fs/nls/Kconfig"
948 source "fs/dlm/Kconfig"
949
950 endmenu