fs/Kconfig: move bfs 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 source "fs/bfs/Kconfig"
211
212 config EFS_FS
213         tristate "EFS file system support (read only) (EXPERIMENTAL)"
214         depends on BLOCK && EXPERIMENTAL
215         help
216           EFS is an older file system used for non-ISO9660 CD-ROMs and hard
217           disk partitions by SGI's IRIX operating system (IRIX 6.0 and newer
218           uses the XFS file system for hard disk partitions however).
219
220           This implementation only offers read-only access. If you don't know
221           what all this is about, it's safe to say N. For more information
222           about EFS see its home page at <http://aeschi.ch.eu.org/efs/>.
223
224           To compile the EFS file system support as a module, choose M here: the
225           module will be called efs.
226
227 source "fs/jffs2/Kconfig"
228 # UBIFS File system configuration
229 source "fs/ubifs/Kconfig"
230
231 config CRAMFS
232         tristate "Compressed ROM file system support (cramfs)"
233         depends on BLOCK
234         select ZLIB_INFLATE
235         help
236           Saying Y here includes support for CramFs (Compressed ROM File
237           System).  CramFs is designed to be a simple, small, and compressed
238           file system for ROM based embedded systems.  CramFs is read-only,
239           limited to 256MB file systems (with 16MB files), and doesn't support
240           16/32 bits uid/gid, hard links and timestamps.
241
242           See <file:Documentation/filesystems/cramfs.txt> and
243           <file:fs/cramfs/README> for further information.
244
245           To compile this as a module, choose M here: the module will be called
246           cramfs.  Note that the root file system (the one containing the
247           directory /) cannot be compiled as a module.
248
249           If unsure, say N.
250
251 config SQUASHFS
252         tristate "SquashFS 4.0 - Squashed file system support"
253         depends on BLOCK
254         select ZLIB_INFLATE
255         help
256           Saying Y here includes support for SquashFS 4.0 (a Compressed
257           Read-Only File System).  Squashfs is a highly compressed read-only
258           filesystem for Linux.  It uses zlib compression to compress both
259           files, inodes and directories.  Inodes in the system are very small
260           and all blocks are packed to minimise data overhead. Block sizes
261           greater than 4K are supported up to a maximum of 1 Mbytes (default
262           block size 128K).  SquashFS 4.0 supports 64 bit filesystems and files
263           (larger than 4GB), full uid/gid information, hard links and
264           timestamps.  
265
266           Squashfs is intended for general read-only filesystem use, for
267           archival use (i.e. in cases where a .tar.gz file may be used), and in
268           embedded systems where low overhead is needed.  Further information
269           and tools are available from http://squashfs.sourceforge.net.
270
271           If you want to compile this as a module ( = code which can be
272           inserted in and removed from the running kernel whenever you want),
273           say M here and read <file:Documentation/modules.txt>.  The module
274           will be called squashfs.  Note that the root file system (the one
275           containing the directory /) cannot be compiled as a module.
276
277           If unsure, say N.
278
279 config SQUASHFS_EMBEDDED
280
281         bool "Additional option for memory-constrained systems" 
282         depends on SQUASHFS
283         default n
284         help
285           Saying Y here allows you to specify cache size.
286
287           If unsure, say N.
288
289 config SQUASHFS_FRAGMENT_CACHE_SIZE
290         int "Number of fragments cached" if SQUASHFS_EMBEDDED
291         depends on SQUASHFS
292         default "3"
293         help
294           By default SquashFS caches the last 3 fragments read from
295           the filesystem.  Increasing this amount may mean SquashFS
296           has to re-read fragments less often from disk, at the expense
297           of extra system memory.  Decreasing this amount will mean
298           SquashFS uses less memory at the expense of extra reads from disk.
299
300           Note there must be at least one cached fragment.  Anything
301           much more than three will probably not make much difference.
302
303 config VXFS_FS
304         tristate "FreeVxFS file system support (VERITAS VxFS(TM) compatible)"
305         depends on BLOCK
306         help
307           FreeVxFS is a file system driver that support the VERITAS VxFS(TM)
308           file system format.  VERITAS VxFS(TM) is the standard file system
309           of SCO UnixWare (and possibly others) and optionally available
310           for Sunsoft Solaris, HP-UX and many other operating systems.
311           Currently only readonly access is supported.
312
313           NOTE: the file system type as used by mount(1), mount(2) and
314           fstab(5) is 'vxfs' as it describes the file system format, not
315           the actual driver.
316
317           To compile this as a module, choose M here: the module will be
318           called freevxfs.  If unsure, say N.
319
320 config MINIX_FS
321         tristate "Minix file system support"
322         depends on BLOCK
323         help
324           Minix is a simple operating system used in many classes about OS's.
325           The minix file system (method to organize files on a hard disk
326           partition or a floppy disk) was the original file system for Linux,
327           but has been superseded by the second extended file system ext2fs.
328           You don't want to use the minix file system on your hard disk
329           because of certain built-in restrictions, but it is sometimes found
330           on older Linux floppy disks.  This option will enlarge your kernel
331           by about 28 KB. If unsure, say N.
332
333           To compile this file system support as a module, choose M here: the
334           module will be called minix.  Note that the file system of your root
335           partition (the one containing the directory /) cannot be compiled as
336           a module.
337
338 config OMFS_FS
339         tristate "SonicBlue Optimized MPEG File System support"
340         depends on BLOCK
341         select CRC_ITU_T
342         help
343           This is the proprietary file system used by the Rio Karma music
344           player and ReplayTV DVR.  Despite the name, this filesystem is not
345           more efficient than a standard FS for MPEG files, in fact likely
346           the opposite is true.  Say Y if you have either of these devices
347           and wish to mount its disk.
348
349           To compile this file system support as a module, choose M here: the
350           module will be called omfs.  If unsure, say N.
351
352 config HPFS_FS
353         tristate "OS/2 HPFS file system support"
354         depends on BLOCK
355         help
356           OS/2 is IBM's operating system for PC's, the same as Warp, and HPFS
357           is the file system used for organizing files on OS/2 hard disk
358           partitions. Say Y if you want to be able to read files from and
359           write files to an OS/2 HPFS partition on your hard drive. OS/2
360           floppies however are in regular MSDOS format, so you don't need this
361           option in order to be able to read them. Read
362           <file:Documentation/filesystems/hpfs.txt>.
363
364           To compile this file system support as a module, choose M here: the
365           module will be called hpfs.  If unsure, say N.
366
367
368 config QNX4FS_FS
369         tristate "QNX4 file system support (read only)"
370         depends on BLOCK
371         help
372           This is the file system used by the real-time operating systems
373           QNX 4 and QNX 6 (the latter is also called QNX RTP).
374           Further information is available at <http://www.qnx.com/>.
375           Say Y if you intend to mount QNX hard disks or floppies.
376           Unless you say Y to "QNX4FS read-write support" below, you will
377           only be able to read these file systems.
378
379           To compile this file system support as a module, choose M here: the
380           module will be called qnx4.
381
382           If you don't know whether you need it, then you don't need it:
383           answer N.
384
385 config QNX4FS_RW
386         bool "QNX4FS write support (DANGEROUS)"
387         depends on QNX4FS_FS && EXPERIMENTAL && BROKEN
388         help
389           Say Y if you want to test write support for QNX4 file systems.
390
391           It's currently broken, so for now:
392           answer N.
393
394 config ROMFS_FS
395         tristate "ROM file system support"
396         depends on BLOCK
397         ---help---
398           This is a very small read-only file system mainly intended for
399           initial ram disks of installation disks, but it could be used for
400           other read-only media as well.  Read
401           <file:Documentation/filesystems/romfs.txt> for details.
402
403           To compile this file system support as a module, choose M here: the
404           module will be called romfs.  Note that the file system of your
405           root partition (the one containing the directory /) cannot be a
406           module.
407
408           If you don't know whether you need it, then you don't need it:
409           answer N.
410
411
412 config SYSV_FS
413         tristate "System V/Xenix/V7/Coherent file system support"
414         depends on BLOCK
415         help
416           SCO, Xenix and Coherent are commercial Unix systems for Intel
417           machines, and Version 7 was used on the DEC PDP-11. Saying Y
418           here would allow you to read from their floppies and hard disk
419           partitions.
420
421           If you have floppies or hard disk partitions like that, it is likely
422           that they contain binaries from those other Unix systems; in order
423           to run these binaries, you will want to install linux-abi which is
424           a set of kernel modules that lets you run SCO, Xenix, Wyse,
425           UnixWare, Dell Unix and System V programs under Linux.  It is
426           available via FTP (user: ftp) from
427           <ftp://ftp.openlinux.org/pub/people/hch/linux-abi/>).
428           NOTE: that will work only for binaries from Intel-based systems;
429           PDP ones will have to wait until somebody ports Linux to -11 ;-)
430
431           If you only intend to mount files from some other Unix over the
432           network using NFS, you don't need the System V file system support
433           (but you need NFS file system support obviously).
434
435           Note that this option is generally not needed for floppies, since a
436           good portable way to transport files and directories between unixes
437           (and even other operating systems) is given by the tar program ("man
438           tar" or preferably "info tar").  Note also that this option has
439           nothing whatsoever to do with the option "System V IPC". Read about
440           the System V file system in
441           <file:Documentation/filesystems/sysv-fs.txt>.
442           Saying Y here will enlarge your kernel by about 27 KB.
443
444           To compile this as a module, choose M here: the module will be called
445           sysv.
446
447           If you haven't heard about all of this before, it's safe to say N.
448
449
450 config UFS_FS
451         tristate "UFS file system support (read only)"
452         depends on BLOCK
453         help
454           BSD and derivate versions of Unix (such as SunOS, FreeBSD, NetBSD,
455           OpenBSD and NeXTstep) use a file system called UFS. Some System V
456           Unixes can create and mount hard disk partitions and diskettes using
457           this file system as well. Saying Y here will allow you to read from
458           these partitions; if you also want to write to them, say Y to the
459           experimental "UFS file system write support", below. Please read the
460           file <file:Documentation/filesystems/ufs.txt> for more information.
461
462           The recently released UFS2 variant (used in FreeBSD 5.x) is
463           READ-ONLY supported.
464
465           Note that this option is generally not needed for floppies, since a
466           good portable way to transport files and directories between unixes
467           (and even other operating systems) is given by the tar program ("man
468           tar" or preferably "info tar").
469
470           When accessing NeXTstep files, you may need to convert them from the
471           NeXT character set to the Latin1 character set; use the program
472           recode ("info recode") for this purpose.
473
474           To compile the UFS file system support as a module, choose M here: the
475           module will be called ufs.
476
477           If you haven't heard about all of this before, it's safe to say N.
478
479 config UFS_FS_WRITE
480         bool "UFS file system write support (DANGEROUS)"
481         depends on UFS_FS && EXPERIMENTAL
482         help
483           Say Y here if you want to try writing to UFS partitions. This is
484           experimental, so you should back up your UFS partitions beforehand.
485
486 config UFS_DEBUG
487         bool "UFS debugging"
488         depends on UFS_FS
489         help
490           If you are experiencing any problems with the UFS filesystem, say
491           Y here.  This will result in _many_ additional debugging messages to be
492           written to the system log.
493
494 endif # MISC_FILESYSTEMS
495
496 menuconfig NETWORK_FILESYSTEMS
497         bool "Network File Systems"
498         default y
499         depends on NET
500         ---help---
501           Say Y here to get to see options for network filesystems and
502           filesystem-related networking code, such as NFS daemon and
503           RPCSEC security modules.
504
505           This option alone does not add any kernel code.
506
507           If you say N, all options in this submenu will be skipped and
508           disabled; if unsure, say Y here.
509
510 if NETWORK_FILESYSTEMS
511
512 config NFS_FS
513         tristate "NFS client support"
514         depends on INET
515         select LOCKD
516         select SUNRPC
517         select NFS_ACL_SUPPORT if NFS_V3_ACL
518         help
519           Choose Y here if you want to access files residing on other
520           computers using Sun's Network File System protocol.  To compile
521           this file system support as a module, choose M here: the module
522           will be called nfs.
523
524           To mount file systems exported by NFS servers, you also need to
525           install the user space mount.nfs command which can be found in
526           the Linux nfs-utils package, available from http://linux-nfs.org/.
527           Information about using the mount command is available in the
528           mount(8) man page.  More detail about the Linux NFS client
529           implementation is available via the nfs(5) man page.
530
531           Below you can choose which versions of the NFS protocol are
532           available in the kernel to mount NFS servers.  Support for NFS
533           version 2 (RFC 1094) is always available when NFS_FS is selected.
534
535           To configure a system which mounts its root file system via NFS
536           at boot time, say Y here, select "Kernel level IP
537           autoconfiguration" in the NETWORK menu, and select "Root file
538           system on NFS" below.  You cannot compile this file system as a
539           module in this case.
540
541           If unsure, say N.
542
543 config NFS_V3
544         bool "NFS client support for NFS version 3"
545         depends on NFS_FS
546         help
547           This option enables support for version 3 of the NFS protocol
548           (RFC 1813) in the kernel's NFS client.
549
550           If unsure, say Y.
551
552 config NFS_V3_ACL
553         bool "NFS client support for the NFSv3 ACL protocol extension"
554         depends on NFS_V3
555         help
556           Some NFS servers support an auxiliary NFSv3 ACL protocol that
557           Sun added to Solaris but never became an official part of the
558           NFS version 3 protocol.  This protocol extension allows
559           applications on NFS clients to manipulate POSIX Access Control
560           Lists on files residing on NFS servers.  NFS servers enforce
561           ACLs on local files whether this protocol is available or not.
562
563           Choose Y here if your NFS server supports the Solaris NFSv3 ACL
564           protocol extension and you want your NFS client to allow
565           applications to access and modify ACLs on files on the server.
566
567           Most NFS servers don't support the Solaris NFSv3 ACL protocol
568           extension.  You can choose N here or specify the "noacl" mount
569           option to prevent your NFS client from trying to use the NFSv3
570           ACL protocol.
571
572           If unsure, say N.
573
574 config NFS_V4
575         bool "NFS client support for NFS version 4 (EXPERIMENTAL)"
576         depends on NFS_FS && EXPERIMENTAL
577         select RPCSEC_GSS_KRB5
578         help
579           This option enables support for version 4 of the NFS protocol
580           (RFC 3530) in the kernel's NFS client.
581
582           To mount NFS servers using NFSv4, you also need to install user
583           space programs which can be found in the Linux nfs-utils package,
584           available from http://linux-nfs.org/.
585
586           If unsure, say N.
587
588 config ROOT_NFS
589         bool "Root file system on NFS"
590         depends on NFS_FS=y && IP_PNP
591         help
592           If you want your system to mount its root file system via NFS,
593           choose Y here.  This is common practice for managing systems
594           without local permanent storage.  For details, read
595           <file:Documentation/filesystems/nfsroot.txt>.
596
597           Most people say N here.
598
599 config NFSD
600         tristate "NFS server support"
601         depends on INET
602         select LOCKD
603         select SUNRPC
604         select EXPORTFS
605         select NFS_ACL_SUPPORT if NFSD_V2_ACL
606         help
607           Choose Y here if you want to allow other computers to access
608           files residing on this system using Sun's Network File System
609           protocol.  To compile the NFS server support as a module,
610           choose M here: the module will be called nfsd.
611
612           You may choose to use a user-space NFS server instead, in which
613           case you can choose N here.
614
615           To export local file systems using NFS, you also need to install
616           user space programs which can be found in the Linux nfs-utils
617           package, available from http://linux-nfs.org/.  More detail about
618           the Linux NFS server implementation is available via the
619           exports(5) man page.
620
621           Below you can choose which versions of the NFS protocol are
622           available to clients mounting the NFS server on this system.
623           Support for NFS version 2 (RFC 1094) is always available when
624           CONFIG_NFSD is selected.
625
626           If unsure, say N.
627
628 config NFSD_V2_ACL
629         bool
630         depends on NFSD
631
632 config NFSD_V3
633         bool "NFS server support for NFS version 3"
634         depends on NFSD
635         help
636           This option enables support in your system's NFS server for
637           version 3 of the NFS protocol (RFC 1813).
638
639           If unsure, say Y.
640
641 config NFSD_V3_ACL
642         bool "NFS server support for the NFSv3 ACL protocol extension"
643         depends on NFSD_V3
644         select NFSD_V2_ACL
645         help
646           Solaris NFS servers support an auxiliary NFSv3 ACL protocol that
647           never became an official part of the NFS version 3 protocol.
648           This protocol extension allows applications on NFS clients to
649           manipulate POSIX Access Control Lists on files residing on NFS
650           servers.  NFS servers enforce POSIX ACLs on local files whether
651           this protocol is available or not.
652
653           This option enables support in your system's NFS server for the
654           NFSv3 ACL protocol extension allowing NFS clients to manipulate
655           POSIX ACLs on files exported by your system's NFS server.  NFS
656           clients which support the Solaris NFSv3 ACL protocol can then
657           access and modify ACLs on your NFS server.
658
659           To store ACLs on your NFS server, you also need to enable ACL-
660           related CONFIG options for your local file systems of choice.
661
662           If unsure, say N.
663
664 config NFSD_V4
665         bool "NFS server support for NFS version 4 (EXPERIMENTAL)"
666         depends on NFSD && PROC_FS && EXPERIMENTAL
667         select NFSD_V3
668         select FS_POSIX_ACL
669         select RPCSEC_GSS_KRB5
670         help
671           This option enables support in your system's NFS server for
672           version 4 of the NFS protocol (RFC 3530).
673
674           To export files using NFSv4, you need to install additional user
675           space programs which can be found in the Linux nfs-utils package,
676           available from http://linux-nfs.org/.
677
678           If unsure, say N.
679
680 config LOCKD
681         tristate
682
683 config LOCKD_V4
684         bool
685         depends on NFSD_V3 || NFS_V3
686         default y
687
688 config EXPORTFS
689         tristate
690
691 config NFS_ACL_SUPPORT
692         tristate
693         select FS_POSIX_ACL
694
695 config NFS_COMMON
696         bool
697         depends on NFSD || NFS_FS
698         default y
699
700 config SUNRPC
701         tristate
702
703 config SUNRPC_GSS
704         tristate
705
706 config SUNRPC_XPRT_RDMA
707         tristate
708         depends on SUNRPC && INFINIBAND && EXPERIMENTAL
709         default SUNRPC && INFINIBAND
710         help
711           This option enables an RPC client transport capability that
712           allows the NFS client to mount servers via an RDMA-enabled
713           transport.
714
715           To compile RPC client RDMA transport support as a module,
716           choose M here: the module will be called xprtrdma.
717
718           If unsure, say N.
719
720 config SUNRPC_REGISTER_V4
721         bool "Register local RPC services via rpcbind v4 (EXPERIMENTAL)"
722         depends on SUNRPC && EXPERIMENTAL
723         default n
724         help
725           Sun added support for registering RPC services at an IPv6
726           address by creating two new versions of the rpcbind protocol
727           (RFC 1833).
728
729           This option enables support in the kernel RPC server for
730           registering kernel RPC services via version 4 of the rpcbind
731           protocol.  If you enable this option, you must run a portmapper
732           daemon that supports rpcbind protocol version 4.
733
734           Serving NFS over IPv6 from knfsd (the kernel's NFS server)
735           requires that you enable this option and use a portmapper that
736           supports rpcbind version 4.
737
738           If unsure, say N to get traditional behavior (register kernel
739           RPC services using only rpcbind version 2).  Distributions
740           using the legacy Linux portmapper daemon must say N here.
741
742 config RPCSEC_GSS_KRB5
743         tristate "Secure RPC: Kerberos V mechanism (EXPERIMENTAL)"
744         depends on SUNRPC && EXPERIMENTAL
745         select SUNRPC_GSS
746         select CRYPTO
747         select CRYPTO_MD5
748         select CRYPTO_DES
749         select CRYPTO_CBC
750         help
751           Choose Y here to enable Secure RPC using the Kerberos version 5
752           GSS-API mechanism (RFC 1964).
753
754           Secure RPC calls with Kerberos require an auxiliary user-space
755           daemon which may be found in the Linux nfs-utils package
756           available from http://linux-nfs.org/.  In addition, user-space
757           Kerberos support should be installed.
758
759           If unsure, say N.
760
761 config RPCSEC_GSS_SPKM3
762         tristate "Secure RPC: SPKM3 mechanism (EXPERIMENTAL)"
763         depends on SUNRPC && EXPERIMENTAL
764         select SUNRPC_GSS
765         select CRYPTO
766         select CRYPTO_MD5
767         select CRYPTO_DES
768         select CRYPTO_CAST5
769         select CRYPTO_CBC
770         help
771           Choose Y here to enable Secure RPC using the SPKM3 public key
772           GSS-API mechansim (RFC 2025).
773
774           Secure RPC calls with SPKM3 require an auxiliary userspace
775           daemon which may be found in the Linux nfs-utils package
776           available from http://linux-nfs.org/.
777
778           If unsure, say N.
779
780 config SMB_FS
781         tristate "SMB file system support (OBSOLETE, please use CIFS)"
782         depends on INET
783         select NLS
784         help
785           SMB (Server Message Block) is the protocol Windows for Workgroups
786           (WfW), Windows 95/98, Windows NT and OS/2 Lan Manager use to share
787           files and printers over local networks.  Saying Y here allows you to
788           mount their file systems (often called "shares" in this context) and
789           access them just like any other Unix directory.  Currently, this
790           works only if the Windows machines use TCP/IP as the underlying
791           transport protocol, and not NetBEUI.  For details, read
792           <file:Documentation/filesystems/smbfs.txt> and the SMB-HOWTO,
793           available from <http://www.tldp.org/docs.html#howto>.
794
795           Note: if you just want your box to act as an SMB *server* and make
796           files and printing services available to Windows clients (which need
797           to have a TCP/IP stack), you don't need to say Y here; you can use
798           the program SAMBA (available from <ftp://ftp.samba.org/pub/samba/>)
799           for that.
800
801           General information about how to connect Linux, Windows machines and
802           Macs is on the WWW at <http://www.eats.com/linux_mac_win.html>.
803
804           To compile the SMB support as a module, choose M here:
805           the module will be called smbfs.  Most people say N, however.
806
807 config SMB_NLS_DEFAULT
808         bool "Use a default NLS"
809         depends on SMB_FS
810         help
811           Enabling this will make smbfs use nls translations by default. You
812           need to specify the local charset (CONFIG_NLS_DEFAULT) in the nls
813           settings and you need to give the default nls for the SMB server as
814           CONFIG_SMB_NLS_REMOTE.
815
816           The nls settings can be changed at mount time, if your smbmount
817           supports that, using the codepage and iocharset parameters.
818
819           smbmount from samba 2.2.0 or later supports this.
820
821 config SMB_NLS_REMOTE
822         string "Default Remote NLS Option"
823         depends on SMB_NLS_DEFAULT
824         default "cp437"
825         help
826           This setting allows you to specify a default value for which
827           codepage the server uses. If this field is left blank no
828           translations will be done by default. The local codepage/charset
829           default to CONFIG_NLS_DEFAULT.
830
831           The nls settings can be changed at mount time, if your smbmount
832           supports that, using the codepage and iocharset parameters.
833
834           smbmount from samba 2.2.0 or later supports this.
835
836 source "fs/cifs/Kconfig"
837
838 config NCP_FS
839         tristate "NCP file system support (to mount NetWare volumes)"
840         depends on IPX!=n || INET
841         help
842           NCP (NetWare Core Protocol) is a protocol that runs over IPX and is
843           used by Novell NetWare clients to talk to file servers.  It is to
844           IPX what NFS is to TCP/IP, if that helps.  Saying Y here allows you
845           to mount NetWare file server volumes and to access them just like
846           any other Unix directory.  For details, please read the file
847           <file:Documentation/filesystems/ncpfs.txt> in the kernel source and
848           the IPX-HOWTO from <http://www.tldp.org/docs.html#howto>.
849
850           You do not have to say Y here if you want your Linux box to act as a
851           file *server* for Novell NetWare clients.
852
853           General information about how to connect Linux, Windows machines and
854           Macs is on the WWW at <http://www.eats.com/linux_mac_win.html>.
855
856           To compile this as a module, choose M here: the module will be called
857           ncpfs.  Say N unless you are connected to a Novell network.
858
859 source "fs/ncpfs/Kconfig"
860
861 config CODA_FS
862         tristate "Coda file system support (advanced network fs)"
863         depends on INET
864         help
865           Coda is an advanced network file system, similar to NFS in that it
866           enables you to mount file systems of a remote server and access them
867           with regular Unix commands as if they were sitting on your hard
868           disk.  Coda has several advantages over NFS: support for
869           disconnected operation (e.g. for laptops), read/write server
870           replication, security model for authentication and encryption,
871           persistent client caches and write back caching.
872
873           If you say Y here, your Linux box will be able to act as a Coda
874           *client*.  You will need user level code as well, both for the
875           client and server.  Servers are currently user level, i.e. they need
876           no kernel support.  Please read
877           <file:Documentation/filesystems/coda.txt> and check out the Coda
878           home page <http://www.coda.cs.cmu.edu/>.
879
880           To compile the coda client support as a module, choose M here: the
881           module will be called coda.
882
883 config AFS_FS
884         tristate "Andrew File System support (AFS) (EXPERIMENTAL)"
885         depends on INET && EXPERIMENTAL
886         select AF_RXRPC
887         help
888           If you say Y here, you will get an experimental Andrew File System
889           driver. It currently only supports unsecured read-only AFS access.
890
891           See <file:Documentation/filesystems/afs.txt> for more information.
892
893           If unsure, say N.
894
895 config AFS_DEBUG
896         bool "AFS dynamic debugging"
897         depends on AFS_FS
898         help
899           Say Y here to make runtime controllable debugging messages appear.
900
901           See <file:Documentation/filesystems/afs.txt> for more information.
902
903           If unsure, say N.
904
905 config 9P_FS
906         tristate "Plan 9 Resource Sharing Support (9P2000) (Experimental)"
907         depends on INET && NET_9P && EXPERIMENTAL
908         help
909           If you say Y here, you will get experimental support for
910           Plan 9 resource sharing via the 9P2000 protocol.
911
912           See <http://v9fs.sf.net> for more information.
913
914           If unsure, say N.
915
916 endif # NETWORK_FILESYSTEMS
917
918 if BLOCK
919 menu "Partition Types"
920
921 source "fs/partitions/Kconfig"
922
923 endmenu
924 endif
925
926 source "fs/nls/Kconfig"
927 source "fs/dlm/Kconfig"
928
929 endmenu