quota: Add callbacks for allocating and destroying dquot structures
[linux-2.6] / 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 config REISERFS_FS
31         tristate "Reiserfs support"
32         help
33           Stores not just filenames but the files themselves in a balanced
34           tree.  Uses journalling.
35
36           Balanced trees are more efficient than traditional file system
37           architectural foundations.
38
39           In general, ReiserFS is as fast as ext2, but is very efficient with
40           large directories and small files.  Additional patches are needed
41           for NFS and quotas, please see <http://www.namesys.com/> for links.
42
43           It is more easily extended to have features currently found in
44           database and keyword search systems than block allocation based file
45           systems are.  The next version will be so extended, and will support
46           plugins consistent with our motto ``It takes more than a license to
47           make source code open.''
48
49           Read <http://www.namesys.com/> to learn more about reiserfs.
50
51           Sponsored by Threshold Networks, Emusic.com, and Bigstorage.com.
52
53           If you like it, you can pay us to add new features to it that you
54           need, buy a support contract, or pay us to port it to another OS.
55
56 config REISERFS_CHECK
57         bool "Enable reiserfs debug mode"
58         depends on REISERFS_FS
59         help
60           If you set this to Y, then ReiserFS will perform every check it can
61           possibly imagine of its internal consistency throughout its
62           operation.  It will also go substantially slower.  More than once we
63           have forgotten that this was on, and then gone despondent over the
64           latest benchmarks.:-) Use of this option allows our team to go all
65           out in checking for consistency when debugging without fear of its
66           effect on end users.  If you are on the verge of sending in a bug
67           report, say Y and you might get a useful error message.  Almost
68           everyone should say N.
69
70 config REISERFS_PROC_INFO
71         bool "Stats in /proc/fs/reiserfs"
72         depends on REISERFS_FS && PROC_FS
73         help
74           Create under /proc/fs/reiserfs a hierarchy of files, displaying
75           various ReiserFS statistics and internal data at the expense of
76           making your kernel or module slightly larger (+8 KB). This also
77           increases the amount of kernel memory required for each mount.
78           Almost everyone but ReiserFS developers and people fine-tuning
79           reiserfs or tracing problems should say N.
80
81 config REISERFS_FS_XATTR
82         bool "ReiserFS extended attributes"
83         depends on REISERFS_FS
84         help
85           Extended attributes are name:value pairs associated with inodes by
86           the kernel or by users (see the attr(5) manual page, or visit
87           <http://acl.bestbits.at/> for details).
88
89           If unsure, say N.
90
91 config REISERFS_FS_POSIX_ACL
92         bool "ReiserFS POSIX Access Control Lists"
93         depends on REISERFS_FS_XATTR
94         select FS_POSIX_ACL
95         help
96           Posix Access Control Lists (ACLs) support permissions for users and
97           groups beyond the owner/group/world scheme.
98
99           To learn more about Access Control Lists, visit the Posix ACLs for
100           Linux website <http://acl.bestbits.at/>.
101
102           If you don't know what Access Control Lists are, say N
103
104 config REISERFS_FS_SECURITY
105         bool "ReiserFS Security Labels"
106         depends on REISERFS_FS_XATTR
107         help
108           Security labels support alternative access control models
109           implemented by security modules like SELinux.  This option
110           enables an extended attribute handler for file security
111           labels in the ReiserFS filesystem.
112
113           If you are not using a security module that requires using
114           extended attributes for file security labels, say N.
115
116 config JFS_FS
117         tristate "JFS filesystem support"
118         select NLS
119         help
120           This is a port of IBM's Journaled Filesystem .  More information is
121           available in the file <file:Documentation/filesystems/jfs.txt>.
122
123           If you do not intend to use the JFS filesystem, say N.
124
125 config JFS_POSIX_ACL
126         bool "JFS POSIX Access Control Lists"
127         depends on JFS_FS
128         select FS_POSIX_ACL
129         help
130           Posix Access Control Lists (ACLs) support permissions for users and
131           groups beyond the owner/group/world scheme.
132
133           To learn more about Access Control Lists, visit the Posix ACLs for
134           Linux website <http://acl.bestbits.at/>.
135
136           If you don't know what Access Control Lists are, say N
137
138 config JFS_SECURITY
139         bool "JFS Security Labels"
140         depends on JFS_FS
141         help
142           Security labels support alternative access control models
143           implemented by security modules like SELinux.  This option
144           enables an extended attribute handler for file security
145           labels in the jfs filesystem.
146
147           If you are not using a security module that requires using
148           extended attributes for file security labels, say N.
149
150 config JFS_DEBUG
151         bool "JFS debugging"
152         depends on JFS_FS
153         help
154           If you are experiencing any problems with the JFS filesystem, say
155           Y here.  This will result in additional debugging messages to be
156           written to the system log.  Under normal circumstances, this
157           results in very little overhead.
158
159 config JFS_STATISTICS
160         bool "JFS statistics"
161         depends on JFS_FS
162         help
163           Enabling this option will cause statistics from the JFS file system
164           to be made available to the user in the /proc/fs/jfs/ directory.
165
166 config FS_POSIX_ACL
167 # Posix ACL utility routines (for now, only ext2/ext3/jfs/reiserfs/nfs4)
168 #
169 # NOTE: you can implement Posix ACLs without these helpers (XFS does).
170 #       Never use this symbol for ifdefs.
171 #
172         bool
173         default n
174
175 config FILE_LOCKING
176         bool "Enable POSIX file locking API" if EMBEDDED
177         default y
178         help
179           This option enables standard file locking support, required
180           for filesystems like NFS and for the flock() system
181           call. Disabling this option saves about 11k.
182
183 source "fs/xfs/Kconfig"
184 source "fs/gfs2/Kconfig"
185
186 config OCFS2_FS
187         tristate "OCFS2 file system support"
188         depends on NET && SYSFS
189         select CONFIGFS_FS
190         select JBD2
191         select CRC32
192         help
193           OCFS2 is a general purpose extent based shared disk cluster file
194           system with many similarities to ext3. It supports 64 bit inode
195           numbers, and has automatically extending metadata groups which may
196           also make it attractive for non-clustered use.
197
198           You'll want to install the ocfs2-tools package in order to at least
199           get "mount.ocfs2".
200
201           Project web page:    http://oss.oracle.com/projects/ocfs2
202           Tools web page:      http://oss.oracle.com/projects/ocfs2-tools
203           OCFS2 mailing lists: http://oss.oracle.com/projects/ocfs2/mailman/
204
205           For more information on OCFS2, see the file
206           <file:Documentation/filesystems/ocfs2.txt>.
207
208 config OCFS2_FS_O2CB
209         tristate "O2CB Kernelspace Clustering"
210         depends on OCFS2_FS
211         default y
212         help
213           OCFS2 includes a simple kernelspace clustering package, the OCFS2
214           Cluster Base.  It only requires a very small userspace component
215           to configure it. This comes with the standard ocfs2-tools package.
216           O2CB is limited to maintaining a cluster for OCFS2 file systems.
217           It cannot manage any other cluster applications.
218
219           It is always safe to say Y here, as the clustering method is
220           run-time selectable.
221
222 config OCFS2_FS_USERSPACE_CLUSTER
223         tristate "OCFS2 Userspace Clustering"
224         depends on OCFS2_FS && DLM
225         default y
226         help
227           This option will allow OCFS2 to use userspace clustering services
228           in conjunction with the DLM in fs/dlm.  If you are using a
229           userspace cluster manager, say Y here.
230
231           It is safe to say Y, as the clustering method is run-time
232           selectable.
233
234 config OCFS2_FS_STATS
235         bool "OCFS2 statistics"
236         depends on OCFS2_FS
237         default y
238         help
239           This option allows some fs statistics to be captured. Enabling
240           this option may increase the memory consumption.
241
242 config OCFS2_DEBUG_MASKLOG
243         bool "OCFS2 logging support"
244         depends on OCFS2_FS
245         default y
246         help
247           The ocfs2 filesystem has an extensive logging system.  The system
248           allows selection of events to log via files in /sys/o2cb/logmask/.
249           This option will enlarge your kernel, but it allows debugging of
250           ocfs2 filesystem issues.
251
252 config OCFS2_DEBUG_FS
253         bool "OCFS2 expensive checks"
254         depends on OCFS2_FS
255         default n
256         help
257           This option will enable expensive consistency checks. Enable
258           this option for debugging only as it is likely to decrease
259           performance of the filesystem.
260
261 config OCFS2_FS_POSIX_ACL
262         bool "OCFS2 POSIX Access Control Lists"
263         depends on OCFS2_FS
264         select FS_POSIX_ACL
265         default n
266         help
267           Posix Access Control Lists (ACLs) support permissions for users and
268           groups beyond the owner/group/world scheme.
269
270 endif # BLOCK
271
272 source "fs/notify/Kconfig"
273
274 config QUOTA
275         bool "Quota support"
276         help
277           If you say Y here, you will be able to set per user limits for disk
278           usage (also called disk quotas). Currently, it works for the
279           ext2, ext3, and reiserfs file system. ext3 also supports journalled
280           quotas for which you don't need to run quotacheck(8) after an unclean
281           shutdown.
282           For further details, read the Quota mini-HOWTO, available from
283           <http://www.tldp.org/docs.html#howto>, or the documentation provided
284           with the quota tools. Probably the quota support is only useful for
285           multi user systems. If unsure, say N.
286
287 config QUOTA_NETLINK_INTERFACE
288         bool "Report quota messages through netlink interface"
289         depends on QUOTA && NET
290         help
291           If you say Y here, quota warnings (about exceeding softlimit, reaching
292           hardlimit, etc.) will be reported through netlink interface. If unsure,
293           say Y.
294
295 config PRINT_QUOTA_WARNING
296         bool "Print quota warnings to console (OBSOLETE)"
297         depends on QUOTA
298         default y
299         help
300           If you say Y here, quota warnings (about exceeding softlimit, reaching
301           hardlimit, etc.) will be printed to the process' controlling terminal.
302           Note that this behavior is currently deprecated and may go away in
303           future. Please use notification via netlink socket instead.
304
305 config QFMT_V1
306         tristate "Old quota format support"
307         depends on QUOTA
308         help
309           This quota format was (is) used by kernels earlier than 2.4.22. If
310           you have quota working and you don't want to convert to new quota
311           format say Y here.
312
313 config QFMT_V2
314         tristate "Quota format v2 support"
315         depends on QUOTA
316         help
317           This quota format allows using quotas with 32-bit UIDs/GIDs. If you
318           need this functionality say Y here.
319
320 config QUOTACTL
321         bool
322         depends on XFS_QUOTA || QUOTA
323         default y
324
325 config AUTOFS_FS
326         tristate "Kernel automounter support"
327         help
328           The automounter is a tool to automatically mount remote file systems
329           on demand. This implementation is partially kernel-based to reduce
330           overhead in the already-mounted case; this is unlike the BSD
331           automounter (amd), which is a pure user space daemon.
332
333           To use the automounter you need the user-space tools from the autofs
334           package; you can find the location in <file:Documentation/Changes>.
335           You also want to answer Y to "NFS file system support", below.
336
337           If you want to use the newer version of the automounter with more
338           features, say N here and say Y to "Kernel automounter v4 support",
339           below.
340
341           To compile this support as a module, choose M here: the module will be
342           called autofs.
343
344           If you are not a part of a fairly large, distributed network, you
345           probably do not need an automounter, and can say N here.
346
347 config AUTOFS4_FS
348         tristate "Kernel automounter version 4 support (also supports v3)"
349         help
350           The automounter is a tool to automatically mount remote file systems
351           on demand. This implementation is partially kernel-based to reduce
352           overhead in the already-mounted case; this is unlike the BSD
353           automounter (amd), which is a pure user space daemon.
354
355           To use the automounter you need the user-space tools from
356           <ftp://ftp.kernel.org/pub/linux/daemons/autofs/v4/>; you also
357           want to answer Y to "NFS file system support", below.
358
359           To compile this support as a module, choose M here: the module will be
360           called autofs4.  You will need to add "alias autofs autofs4" to your
361           modules configuration file.
362
363           If you are not a part of a fairly large, distributed network or
364           don't have a laptop which needs to dynamically reconfigure to the
365           local network, you probably do not need an automounter, and can say
366           N here.
367
368 config FUSE_FS
369         tristate "FUSE (Filesystem in Userspace) support"
370         help
371           With FUSE it is possible to implement a fully functional filesystem
372           in a userspace program.
373
374           There's also companion library: libfuse.  This library along with
375           utilities is available from the FUSE homepage:
376           <http://fuse.sourceforge.net/>
377
378           See <file:Documentation/filesystems/fuse.txt> for more information.
379           See <file:Documentation/Changes> for needed library/utility version.
380
381           If you want to develop a userspace FS, or if you want to use
382           a filesystem based on FUSE, answer Y or M.
383
384 config GENERIC_ACL
385         bool
386         select FS_POSIX_ACL
387
388 if BLOCK
389 menu "CD-ROM/DVD Filesystems"
390
391 config ISO9660_FS
392         tristate "ISO 9660 CDROM file system support"
393         help
394           This is the standard file system used on CD-ROMs.  It was previously
395           known as "High Sierra File System" and is called "hsfs" on other
396           Unix systems.  The so-called Rock-Ridge extensions which allow for
397           long Unix filenames and symbolic links are also supported by this
398           driver.  If you have a CD-ROM drive and want to do more with it than
399           just listen to audio CDs and watch its LEDs, say Y (and read
400           <file:Documentation/filesystems/isofs.txt> and the CD-ROM-HOWTO,
401           available from <http://www.tldp.org/docs.html#howto>), thereby
402           enlarging your kernel by about 27 KB; otherwise say N.
403
404           To compile this file system support as a module, choose M here: the
405           module will be called isofs.
406
407 config JOLIET
408         bool "Microsoft Joliet CDROM extensions"
409         depends on ISO9660_FS
410         select NLS
411         help
412           Joliet is a Microsoft extension for the ISO 9660 CD-ROM file system
413           which allows for long filenames in unicode format (unicode is the
414           new 16 bit character code, successor to ASCII, which encodes the
415           characters of almost all languages of the world; see
416           <http://www.unicode.org/> for more information).  Say Y here if you
417           want to be able to read Joliet CD-ROMs under Linux.
418
419 config ZISOFS
420         bool "Transparent decompression extension"
421         depends on ISO9660_FS
422         select ZLIB_INFLATE
423         help
424           This is a Linux-specific extension to RockRidge which lets you store
425           data in compressed form on a CD-ROM and have it transparently
426           decompressed when the CD-ROM is accessed.  See
427           <http://www.kernel.org/pub/linux/utils/fs/zisofs/> for the tools
428           necessary to create such a filesystem.  Say Y here if you want to be
429           able to read such compressed CD-ROMs.
430
431 config UDF_FS
432         tristate "UDF file system support"
433         select CRC_ITU_T
434         help
435           This is the new file system used on some CD-ROMs and DVDs. Say Y if
436           you intend to mount DVD discs or CDRW's written in packet mode, or
437           if written to by other UDF utilities, such as DirectCD.
438           Please read <file:Documentation/filesystems/udf.txt>.
439
440           To compile this file system support as a module, choose M here: the
441           module will be called udf.
442
443           If unsure, say N.
444
445 config UDF_NLS
446         bool
447         default y
448         depends on (UDF_FS=m && NLS) || (UDF_FS=y && NLS=y)
449
450 endmenu
451 endif # BLOCK
452
453 if BLOCK
454 menu "DOS/FAT/NT Filesystems"
455
456 config FAT_FS
457         tristate
458         select NLS
459         help
460           If you want to use one of the FAT-based file systems (the MS-DOS and
461           VFAT (Windows 95) file systems), then you must say Y or M here
462           to include FAT support. You will then be able to mount partitions or
463           diskettes with FAT-based file systems and transparently access the
464           files on them, i.e. MSDOS files will look and behave just like all
465           other Unix files.
466
467           This FAT support is not a file system in itself, it only provides
468           the foundation for the other file systems. You will have to say Y or
469           M to at least one of "MSDOS fs support" or "VFAT fs support" in
470           order to make use of it.
471
472           Another way to read and write MSDOS floppies and hard drive
473           partitions from within Linux (but not transparently) is with the
474           mtools ("man mtools") program suite. You don't need to say Y here in
475           order to do that.
476
477           If you need to move large files on floppies between a DOS and a
478           Linux box, say Y here, mount the floppy under Linux with an MSDOS
479           file system and use GNU tar's M option. GNU tar is a program
480           available for Unix and DOS ("man tar" or "info tar").
481
482           The FAT support will enlarge your kernel by about 37 KB. If unsure,
483           say Y.
484
485           To compile this as a module, choose M here: the module will be called
486           fat.  Note that if you compile the FAT support as a module, you
487           cannot compile any of the FAT-based file systems into the kernel
488           -- they will have to be modules as well.
489
490 config MSDOS_FS
491         tristate "MSDOS fs support"
492         select FAT_FS
493         help
494           This allows you to mount MSDOS partitions of your hard drive (unless
495           they are compressed; to access compressed MSDOS partitions under
496           Linux, you can either use the DOS emulator DOSEMU, described in the
497           DOSEMU-HOWTO, available from
498           <http://www.tldp.org/docs.html#howto>, or try dmsdosfs in
499           <ftp://ibiblio.org/pub/Linux/system/filesystems/dosfs/>. If you
500           intend to use dosemu with a non-compressed MSDOS partition, say Y
501           here) and MSDOS floppies. This means that file access becomes
502           transparent, i.e. the MSDOS files look and behave just like all
503           other Unix files.
504
505           If you have Windows 95 or Windows NT installed on your MSDOS
506           partitions, you should use the VFAT file system (say Y to "VFAT fs
507           support" below), or you will not be able to see the long filenames
508           generated by Windows 95 / Windows NT.
509
510           This option will enlarge your kernel by about 7 KB. If unsure,
511           answer Y. This will only work if you said Y to "DOS FAT fs support"
512           as well. To compile this as a module, choose M here: the module will
513           be called msdos.
514
515 config VFAT_FS
516         tristate "VFAT (Windows-95) fs support"
517         select FAT_FS
518         help
519           This option provides support for normal Windows file systems with
520           long filenames.  That includes non-compressed FAT-based file systems
521           used by Windows 95, Windows 98, Windows NT 4.0, and the Unix
522           programs from the mtools package.
523
524           The VFAT support enlarges your kernel by about 10 KB and it only
525           works if you said Y to the "DOS FAT fs support" above.  Please read
526           the file <file:Documentation/filesystems/vfat.txt> for details.  If
527           unsure, say Y.
528
529           To compile this as a module, choose M here: the module will be called
530           vfat.
531
532 config FAT_DEFAULT_CODEPAGE
533         int "Default codepage for FAT"
534         depends on MSDOS_FS || VFAT_FS
535         default 437
536         help
537           This option should be set to the codepage of your FAT filesystems.
538           It can be overridden with the "codepage" mount option.
539           See <file:Documentation/filesystems/vfat.txt> for more information.
540
541 config FAT_DEFAULT_IOCHARSET
542         string "Default iocharset for FAT"
543         depends on VFAT_FS
544         default "iso8859-1"
545         help
546           Set this to the default input/output character set you'd
547           like FAT to use. It should probably match the character set
548           that most of your FAT filesystems use, and can be overridden
549           with the "iocharset" mount option for FAT filesystems.
550           Note that "utf8" is not recommended for FAT filesystems.
551           If unsure, you shouldn't set "utf8" here.
552           See <file:Documentation/filesystems/vfat.txt> for more information.
553
554 config NTFS_FS
555         tristate "NTFS file system support"
556         select NLS
557         help
558           NTFS is the file system of Microsoft Windows NT, 2000, XP and 2003.
559
560           Saying Y or M here enables read support.  There is partial, but
561           safe, write support available.  For write support you must also
562           say Y to "NTFS write support" below.
563
564           There are also a number of user-space tools available, called
565           ntfsprogs.  These include ntfsundelete and ntfsresize, that work
566           without NTFS support enabled in the kernel.
567
568           This is a rewrite from scratch of Linux NTFS support and replaced
569           the old NTFS code starting with Linux 2.5.11.  A backport to
570           the Linux 2.4 kernel series is separately available as a patch
571           from the project web site.
572
573           For more information see <file:Documentation/filesystems/ntfs.txt>
574           and <http://www.linux-ntfs.org/>.
575
576           To compile this file system support as a module, choose M here: the
577           module will be called ntfs.
578
579           If you are not using Windows NT, 2000, XP or 2003 in addition to
580           Linux on your computer it is safe to say N.
581
582 config NTFS_DEBUG
583         bool "NTFS debugging support"
584         depends on NTFS_FS
585         help
586           If you are experiencing any problems with the NTFS file system, say
587           Y here.  This will result in additional consistency checks to be
588           performed by the driver as well as additional debugging messages to
589           be written to the system log.  Note that debugging messages are
590           disabled by default.  To enable them, supply the option debug_msgs=1
591           at the kernel command line when booting the kernel or as an option
592           to insmod when loading the ntfs module.  Once the driver is active,
593           you can enable debugging messages by doing (as root):
594           echo 1 > /proc/sys/fs/ntfs-debug
595           Replacing the "1" with "0" would disable debug messages.
596
597           If you leave debugging messages disabled, this results in little
598           overhead, but enabling debug messages results in very significant
599           slowdown of the system.
600
601           When reporting bugs, please try to have available a full dump of
602           debugging messages while the misbehaviour was occurring.
603
604 config NTFS_RW
605         bool "NTFS write support"
606         depends on NTFS_FS
607         help
608           This enables the partial, but safe, write support in the NTFS driver.
609
610           The only supported operation is overwriting existing files, without
611           changing the file length.  No file or directory creation, deletion or
612           renaming is possible.  Note only non-resident files can be written to
613           so you may find that some very small files (<500 bytes or so) cannot
614           be written to.
615
616           While we cannot guarantee that it will not damage any data, we have
617           so far not received a single report where the driver would have
618           damaged someones data so we assume it is perfectly safe to use.
619
620           Note:  While write support is safe in this version (a rewrite from
621           scratch of the NTFS support), it should be noted that the old NTFS
622           write support, included in Linux 2.5.10 and before (since 1997),
623           is not safe.
624
625           This is currently useful with TopologiLinux.  TopologiLinux is run
626           on top of any DOS/Microsoft Windows system without partitioning your
627           hard disk.  Unlike other Linux distributions TopologiLinux does not
628           need its own partition.  For more information see
629           <http://topologi-linux.sourceforge.net/>
630
631           It is perfectly safe to say N here.
632
633 endmenu
634 endif # BLOCK
635
636 menu "Pseudo filesystems"
637
638 source "fs/proc/Kconfig"
639
640 config SYSFS
641         bool "sysfs file system support" if EMBEDDED
642         default y
643         help
644         The sysfs filesystem is a virtual filesystem that the kernel uses to
645         export internal kernel objects, their attributes, and their
646         relationships to one another.
647
648         Users can use sysfs to ascertain useful information about the running
649         kernel, such as the devices the kernel has discovered on each bus and
650         which driver each is bound to. sysfs can also be used to tune devices
651         and other kernel subsystems.
652
653         Some system agents rely on the information in sysfs to operate.
654         /sbin/hotplug uses device and object attributes in sysfs to assist in
655         delegating policy decisions, like persistently naming devices.
656
657         sysfs is currently used by the block subsystem to mount the root
658         partition.  If sysfs is disabled you must specify the boot device on
659         the kernel boot command line via its major and minor numbers.  For
660         example, "root=03:01" for /dev/hda1.
661
662         Designers of embedded systems may wish to say N here to conserve space.
663
664 config TMPFS
665         bool "Virtual memory file system support (former shm fs)"
666         help
667           Tmpfs is a file system which keeps all files in virtual memory.
668
669           Everything in tmpfs is temporary in the sense that no files will be
670           created on your hard drive. The files live in memory and swap
671           space. If you unmount a tmpfs instance, everything stored therein is
672           lost.
673
674           See <file:Documentation/filesystems/tmpfs.txt> for details.
675
676 config TMPFS_POSIX_ACL
677         bool "Tmpfs POSIX Access Control Lists"
678         depends on TMPFS
679         select GENERIC_ACL
680         help
681           POSIX Access Control Lists (ACLs) support permissions for users and
682           groups beyond the owner/group/world scheme.
683
684           To learn more about Access Control Lists, visit the POSIX ACLs for
685           Linux website <http://acl.bestbits.at/>.
686
687           If you don't know what Access Control Lists are, say N.
688
689 config HUGETLBFS
690         bool "HugeTLB file system support"
691         depends on X86 || IA64 || PPC64 || SPARC64 || (SUPERH && MMU) || \
692                    (S390 && 64BIT) || BROKEN
693         help
694           hugetlbfs is a filesystem backing for HugeTLB pages, based on
695           ramfs. For architectures that support it, say Y here and read
696           <file:Documentation/vm/hugetlbpage.txt> for details.
697
698           If unsure, say N.
699
700 config HUGETLB_PAGE
701         def_bool HUGETLBFS
702
703 config CONFIGFS_FS
704         tristate "Userspace-driven configuration filesystem"
705         depends on SYSFS
706         help
707           configfs is a ram-based filesystem that provides the converse
708           of sysfs's functionality. Where sysfs is a filesystem-based
709           view of kernel objects, configfs is a filesystem-based manager
710           of kernel objects, or config_items.
711
712           Both sysfs and configfs can and should exist together on the
713           same system. One is not a replacement for the other.
714
715 endmenu
716
717 menu "Miscellaneous filesystems"
718
719 config ADFS_FS
720         tristate "ADFS file system support (EXPERIMENTAL)"
721         depends on BLOCK && EXPERIMENTAL
722         help
723           The Acorn Disc Filing System is the standard file system of the
724           RiscOS operating system which runs on Acorn's ARM-based Risc PC
725           systems and the Acorn Archimedes range of machines. If you say Y
726           here, Linux will be able to read from ADFS partitions on hard drives
727           and from ADFS-formatted floppy discs. If you also want to be able to
728           write to those devices, say Y to "ADFS write support" below.
729
730           The ADFS partition should be the first partition (i.e.,
731           /dev/[hs]d?1) on each of your drives. Please read the file
732           <file:Documentation/filesystems/adfs.txt> for further details.
733
734           To compile this code as a module, choose M here: the module will be
735           called adfs.
736
737           If unsure, say N.
738
739 config ADFS_FS_RW
740         bool "ADFS write support (DANGEROUS)"
741         depends on ADFS_FS
742         help
743           If you say Y here, you will be able to write to ADFS partitions on
744           hard drives and ADFS-formatted floppy disks. This is experimental
745           codes, so if you're unsure, say N.
746
747 config AFFS_FS
748         tristate "Amiga FFS file system support (EXPERIMENTAL)"
749         depends on BLOCK && EXPERIMENTAL
750         help
751           The Fast File System (FFS) is the common file system used on hard
752           disks by Amiga(tm) systems since AmigaOS Version 1.3 (34.20).  Say Y
753           if you want to be able to read and write files from and to an Amiga
754           FFS partition on your hard drive.  Amiga floppies however cannot be
755           read with this driver due to an incompatibility of the floppy
756           controller used in an Amiga and the standard floppy controller in
757           PCs and workstations. Read <file:Documentation/filesystems/affs.txt>
758           and <file:fs/affs/Changes>.
759
760           With this driver you can also mount disk files used by Bernd
761           Schmidt's Un*X Amiga Emulator
762           (<http://www.freiburg.linux.de/~uae/>).
763           If you want to do this, you will also need to say Y or M to "Loop
764           device support", above.
765
766           To compile this file system support as a module, choose M here: the
767           module will be called affs.  If unsure, say N.
768
769 config ECRYPT_FS
770         tristate "eCrypt filesystem layer support (EXPERIMENTAL)"
771         depends on EXPERIMENTAL && KEYS && CRYPTO && NET
772         help
773           Encrypted filesystem that operates on the VFS layer.  See
774           <file:Documentation/filesystems/ecryptfs.txt> to learn more about
775           eCryptfs.  Userspace components are required and can be
776           obtained from <http://ecryptfs.sf.net>.
777
778           To compile this file system support as a module, choose M here: the
779           module will be called ecryptfs.
780
781 config HFS_FS
782         tristate "Apple Macintosh file system support (EXPERIMENTAL)"
783         depends on BLOCK && EXPERIMENTAL
784         select NLS
785         help
786           If you say Y here, you will be able to mount Macintosh-formatted
787           floppy disks and hard drive partitions with full read-write access.
788           Please read <file:Documentation/filesystems/hfs.txt> to learn about
789           the available mount options.
790
791           To compile this file system support as a module, choose M here: the
792           module will be called hfs.
793
794 config HFSPLUS_FS
795         tristate "Apple Extended HFS file system support"
796         depends on BLOCK
797         select NLS
798         select NLS_UTF8
799         help
800           If you say Y here, you will be able to mount extended format
801           Macintosh-formatted hard drive partitions with full read-write access.
802
803           This file system is often called HFS+ and was introduced with
804           MacOS 8. It includes all Mac specific filesystem data such as
805           data forks and creator codes, but it also has several UNIX
806           style features such as file ownership and permissions.
807
808 config BEFS_FS
809         tristate "BeOS file system (BeFS) support (read only) (EXPERIMENTAL)"
810         depends on BLOCK && EXPERIMENTAL
811         select NLS
812         help
813           The BeOS File System (BeFS) is the native file system of Be, Inc's
814           BeOS. Notable features include support for arbitrary attributes
815           on files and directories, and database-like indices on selected
816           attributes. (Also note that this driver doesn't make those features
817           available at this time). It is a 64 bit filesystem, so it supports
818           extremely large volumes and files.
819
820           If you use this filesystem, you should also say Y to at least one
821           of the NLS (native language support) options below.
822
823           If you don't know what this is about, say N.
824
825           To compile this as a module, choose M here: the module will be
826           called befs.
827
828 config BEFS_DEBUG
829         bool "Debug BeFS"
830         depends on BEFS_FS
831         help
832           If you say Y here, you can use the 'debug' mount option to enable
833           debugging output from the driver.
834
835 config BFS_FS
836         tristate "BFS file system support (EXPERIMENTAL)"
837         depends on BLOCK && EXPERIMENTAL
838         help
839           Boot File System (BFS) is a file system used under SCO UnixWare to
840           allow the bootloader access to the kernel image and other important
841           files during the boot process.  It is usually mounted under /stand
842           and corresponds to the slice marked as "STAND" in the UnixWare
843           partition.  You should say Y if you want to read or write the files
844           on your /stand slice from within Linux.  You then also need to say Y
845           to "UnixWare slices support", below.  More information about the BFS
846           file system is contained in the file
847           <file:Documentation/filesystems/bfs.txt>.
848
849           If you don't know what this is about, say N.
850
851           To compile this as a module, choose M here: the module will be called
852           bfs.  Note that the file system of your root partition (the one
853           containing the directory /) cannot be compiled as a module.
854
855
856
857 config EFS_FS
858         tristate "EFS file system support (read only) (EXPERIMENTAL)"
859         depends on BLOCK && EXPERIMENTAL
860         help
861           EFS is an older file system used for non-ISO9660 CD-ROMs and hard
862           disk partitions by SGI's IRIX operating system (IRIX 6.0 and newer
863           uses the XFS file system for hard disk partitions however).
864
865           This implementation only offers read-only access. If you don't know
866           what all this is about, it's safe to say N. For more information
867           about EFS see its home page at <http://aeschi.ch.eu.org/efs/>.
868
869           To compile the EFS file system support as a module, choose M here: the
870           module will be called efs.
871
872 source "fs/jffs2/Kconfig"
873 # UBIFS File system configuration
874 source "fs/ubifs/Kconfig"
875
876 config CRAMFS
877         tristate "Compressed ROM file system support (cramfs)"
878         depends on BLOCK
879         select ZLIB_INFLATE
880         help
881           Saying Y here includes support for CramFs (Compressed ROM File
882           System).  CramFs is designed to be a simple, small, and compressed
883           file system for ROM based embedded systems.  CramFs is read-only,
884           limited to 256MB file systems (with 16MB files), and doesn't support
885           16/32 bits uid/gid, hard links and timestamps.
886
887           See <file:Documentation/filesystems/cramfs.txt> and
888           <file:fs/cramfs/README> for further information.
889
890           To compile this as a module, choose M here: the module will be called
891           cramfs.  Note that the root file system (the one containing the
892           directory /) cannot be compiled as a module.
893
894           If unsure, say N.
895
896 config VXFS_FS
897         tristate "FreeVxFS file system support (VERITAS VxFS(TM) compatible)"
898         depends on BLOCK
899         help
900           FreeVxFS is a file system driver that support the VERITAS VxFS(TM)
901           file system format.  VERITAS VxFS(TM) is the standard file system
902           of SCO UnixWare (and possibly others) and optionally available
903           for Sunsoft Solaris, HP-UX and many other operating systems.
904           Currently only readonly access is supported.
905
906           NOTE: the file system type as used by mount(1), mount(2) and
907           fstab(5) is 'vxfs' as it describes the file system format, not
908           the actual driver.
909
910           To compile this as a module, choose M here: the module will be
911           called freevxfs.  If unsure, say N.
912
913 config MINIX_FS
914         tristate "Minix file system support"
915         depends on BLOCK
916         help
917           Minix is a simple operating system used in many classes about OS's.
918           The minix file system (method to organize files on a hard disk
919           partition or a floppy disk) was the original file system for Linux,
920           but has been superseded by the second extended file system ext2fs.
921           You don't want to use the minix file system on your hard disk
922           because of certain built-in restrictions, but it is sometimes found
923           on older Linux floppy disks.  This option will enlarge your kernel
924           by about 28 KB. If unsure, say N.
925
926           To compile this file system support as a module, choose M here: the
927           module will be called minix.  Note that the file system of your root
928           partition (the one containing the directory /) cannot be compiled as
929           a module.
930
931 config OMFS_FS
932         tristate "SonicBlue Optimized MPEG File System support"
933         depends on BLOCK
934         select CRC_ITU_T
935         help
936           This is the proprietary file system used by the Rio Karma music
937           player and ReplayTV DVR.  Despite the name, this filesystem is not
938           more efficient than a standard FS for MPEG files, in fact likely
939           the opposite is true.  Say Y if you have either of these devices
940           and wish to mount its disk.
941
942           To compile this file system support as a module, choose M here: the
943           module will be called omfs.  If unsure, say N.
944
945 config HPFS_FS
946         tristate "OS/2 HPFS file system support"
947         depends on BLOCK
948         help
949           OS/2 is IBM's operating system for PC's, the same as Warp, and HPFS
950           is the file system used for organizing files on OS/2 hard disk
951           partitions. Say Y if you want to be able to read files from and
952           write files to an OS/2 HPFS partition on your hard drive. OS/2
953           floppies however are in regular MSDOS format, so you don't need this
954           option in order to be able to read them. Read
955           <file:Documentation/filesystems/hpfs.txt>.
956
957           To compile this file system support as a module, choose M here: the
958           module will be called hpfs.  If unsure, say N.
959
960
961 config QNX4FS_FS
962         tristate "QNX4 file system support (read only)"
963         depends on BLOCK
964         help
965           This is the file system used by the real-time operating systems
966           QNX 4 and QNX 6 (the latter is also called QNX RTP).
967           Further information is available at <http://www.qnx.com/>.
968           Say Y if you intend to mount QNX hard disks or floppies.
969           Unless you say Y to "QNX4FS read-write support" below, you will
970           only be able to read these file systems.
971
972           To compile this file system support as a module, choose M here: the
973           module will be called qnx4.
974
975           If you don't know whether you need it, then you don't need it:
976           answer N.
977
978 config QNX4FS_RW
979         bool "QNX4FS write support (DANGEROUS)"
980         depends on QNX4FS_FS && EXPERIMENTAL && BROKEN
981         help
982           Say Y if you want to test write support for QNX4 file systems.
983
984           It's currently broken, so for now:
985           answer N.
986
987 config ROMFS_FS
988         tristate "ROM file system support"
989         depends on BLOCK
990         ---help---
991           This is a very small read-only file system mainly intended for
992           initial ram disks of installation disks, but it could be used for
993           other read-only media as well.  Read
994           <file:Documentation/filesystems/romfs.txt> for details.
995
996           To compile this file system support as a module, choose M here: the
997           module will be called romfs.  Note that the file system of your
998           root partition (the one containing the directory /) cannot be a
999           module.
1000
1001           If you don't know whether you need it, then you don't need it:
1002           answer N.
1003
1004
1005 config SYSV_FS
1006         tristate "System V/Xenix/V7/Coherent file system support"
1007         depends on BLOCK
1008         help
1009           SCO, Xenix and Coherent are commercial Unix systems for Intel
1010           machines, and Version 7 was used on the DEC PDP-11. Saying Y
1011           here would allow you to read from their floppies and hard disk
1012           partitions.
1013
1014           If you have floppies or hard disk partitions like that, it is likely
1015           that they contain binaries from those other Unix systems; in order
1016           to run these binaries, you will want to install linux-abi which is
1017           a set of kernel modules that lets you run SCO, Xenix, Wyse,
1018           UnixWare, Dell Unix and System V programs under Linux.  It is
1019           available via FTP (user: ftp) from
1020           <ftp://ftp.openlinux.org/pub/people/hch/linux-abi/>).
1021           NOTE: that will work only for binaries from Intel-based systems;
1022           PDP ones will have to wait until somebody ports Linux to -11 ;-)
1023
1024           If you only intend to mount files from some other Unix over the
1025           network using NFS, you don't need the System V file system support
1026           (but you need NFS file system support obviously).
1027
1028           Note that this option is generally not needed for floppies, since a
1029           good portable way to transport files and directories between unixes
1030           (and even other operating systems) is given by the tar program ("man
1031           tar" or preferably "info tar").  Note also that this option has
1032           nothing whatsoever to do with the option "System V IPC". Read about
1033           the System V file system in
1034           <file:Documentation/filesystems/sysv-fs.txt>.
1035           Saying Y here will enlarge your kernel by about 27 KB.
1036
1037           To compile this as a module, choose M here: the module will be called
1038           sysv.
1039
1040           If you haven't heard about all of this before, it's safe to say N.
1041
1042
1043 config UFS_FS
1044         tristate "UFS file system support (read only)"
1045         depends on BLOCK
1046         help
1047           BSD and derivate versions of Unix (such as SunOS, FreeBSD, NetBSD,
1048           OpenBSD and NeXTstep) use a file system called UFS. Some System V
1049           Unixes can create and mount hard disk partitions and diskettes using
1050           this file system as well. Saying Y here will allow you to read from
1051           these partitions; if you also want to write to them, say Y to the
1052           experimental "UFS file system write support", below. Please read the
1053           file <file:Documentation/filesystems/ufs.txt> for more information.
1054
1055           The recently released UFS2 variant (used in FreeBSD 5.x) is
1056           READ-ONLY supported.
1057
1058           Note that this option is generally not needed for floppies, since a
1059           good portable way to transport files and directories between unixes
1060           (and even other operating systems) is given by the tar program ("man
1061           tar" or preferably "info tar").
1062
1063           When accessing NeXTstep files, you may need to convert them from the
1064           NeXT character set to the Latin1 character set; use the program
1065           recode ("info recode") for this purpose.
1066
1067           To compile the UFS file system support as a module, choose M here: the
1068           module will be called ufs.
1069
1070           If you haven't heard about all of this before, it's safe to say N.
1071
1072 config UFS_FS_WRITE
1073         bool "UFS file system write support (DANGEROUS)"
1074         depends on UFS_FS && EXPERIMENTAL
1075         help
1076           Say Y here if you want to try writing to UFS partitions. This is
1077           experimental, so you should back up your UFS partitions beforehand.
1078
1079 config UFS_DEBUG
1080         bool "UFS debugging"
1081         depends on UFS_FS
1082         help
1083           If you are experiencing any problems with the UFS filesystem, say
1084           Y here.  This will result in _many_ additional debugging messages to be
1085           written to the system log.
1086
1087 endmenu
1088
1089 menuconfig NETWORK_FILESYSTEMS
1090         bool "Network File Systems"
1091         default y
1092         depends on NET
1093         ---help---
1094           Say Y here to get to see options for network filesystems and
1095           filesystem-related networking code, such as NFS daemon and
1096           RPCSEC security modules.
1097
1098           This option alone does not add any kernel code.
1099
1100           If you say N, all options in this submenu will be skipped and
1101           disabled; if unsure, say Y here.
1102
1103 if NETWORK_FILESYSTEMS
1104
1105 config NFS_FS
1106         tristate "NFS client support"
1107         depends on INET
1108         select LOCKD
1109         select SUNRPC
1110         select NFS_ACL_SUPPORT if NFS_V3_ACL
1111         help
1112           Choose Y here if you want to access files residing on other
1113           computers using Sun's Network File System protocol.  To compile
1114           this file system support as a module, choose M here: the module
1115           will be called nfs.
1116
1117           To mount file systems exported by NFS servers, you also need to
1118           install the user space mount.nfs command which can be found in
1119           the Linux nfs-utils package, available from http://linux-nfs.org/.
1120           Information about using the mount command is available in the
1121           mount(8) man page.  More detail about the Linux NFS client
1122           implementation is available via the nfs(5) man page.
1123
1124           Below you can choose which versions of the NFS protocol are
1125           available in the kernel to mount NFS servers.  Support for NFS
1126           version 2 (RFC 1094) is always available when NFS_FS is selected.
1127
1128           To configure a system which mounts its root file system via NFS
1129           at boot time, say Y here, select "Kernel level IP
1130           autoconfiguration" in the NETWORK menu, and select "Root file
1131           system on NFS" below.  You cannot compile this file system as a
1132           module in this case.
1133
1134           If unsure, say N.
1135
1136 config NFS_V3
1137         bool "NFS client support for NFS version 3"
1138         depends on NFS_FS
1139         help
1140           This option enables support for version 3 of the NFS protocol
1141           (RFC 1813) in the kernel's NFS client.
1142
1143           If unsure, say Y.
1144
1145 config NFS_V3_ACL
1146         bool "NFS client support for the NFSv3 ACL protocol extension"
1147         depends on NFS_V3
1148         help
1149           Some NFS servers support an auxiliary NFSv3 ACL protocol that
1150           Sun added to Solaris but never became an official part of the
1151           NFS version 3 protocol.  This protocol extension allows
1152           applications on NFS clients to manipulate POSIX Access Control
1153           Lists on files residing on NFS servers.  NFS servers enforce
1154           ACLs on local files whether this protocol is available or not.
1155
1156           Choose Y here if your NFS server supports the Solaris NFSv3 ACL
1157           protocol extension and you want your NFS client to allow
1158           applications to access and modify ACLs on files on the server.
1159
1160           Most NFS servers don't support the Solaris NFSv3 ACL protocol
1161           extension.  You can choose N here or specify the "noacl" mount
1162           option to prevent your NFS client from trying to use the NFSv3
1163           ACL protocol.
1164
1165           If unsure, say N.
1166
1167 config NFS_V4
1168         bool "NFS client support for NFS version 4 (EXPERIMENTAL)"
1169         depends on NFS_FS && EXPERIMENTAL
1170         select RPCSEC_GSS_KRB5
1171         help
1172           This option enables support for version 4 of the NFS protocol
1173           (RFC 3530) in the kernel's NFS client.
1174
1175           To mount NFS servers using NFSv4, you also need to install user
1176           space programs which can be found in the Linux nfs-utils package,
1177           available from http://linux-nfs.org/.
1178
1179           If unsure, say N.
1180
1181 config ROOT_NFS
1182         bool "Root file system on NFS"
1183         depends on NFS_FS=y && IP_PNP
1184         help
1185           If you want your system to mount its root file system via NFS,
1186           choose Y here.  This is common practice for managing systems
1187           without local permanent storage.  For details, read
1188           <file:Documentation/filesystems/nfsroot.txt>.
1189
1190           Most people say N here.
1191
1192 config NFSD
1193         tristate "NFS server support"
1194         depends on INET
1195         select LOCKD
1196         select SUNRPC
1197         select EXPORTFS
1198         select NFS_ACL_SUPPORT if NFSD_V2_ACL
1199         help
1200           Choose Y here if you want to allow other computers to access
1201           files residing on this system using Sun's Network File System
1202           protocol.  To compile the NFS server support as a module,
1203           choose M here: the module will be called nfsd.
1204
1205           You may choose to use a user-space NFS server instead, in which
1206           case you can choose N here.
1207
1208           To export local file systems using NFS, you also need to install
1209           user space programs which can be found in the Linux nfs-utils
1210           package, available from http://linux-nfs.org/.  More detail about
1211           the Linux NFS server implementation is available via the
1212           exports(5) man page.
1213
1214           Below you can choose which versions of the NFS protocol are
1215           available to clients mounting the NFS server on this system.
1216           Support for NFS version 2 (RFC 1094) is always available when
1217           CONFIG_NFSD is selected.
1218
1219           If unsure, say N.
1220
1221 config NFSD_V2_ACL
1222         bool
1223         depends on NFSD
1224
1225 config NFSD_V3
1226         bool "NFS server support for NFS version 3"
1227         depends on NFSD
1228         help
1229           This option enables support in your system's NFS server for
1230           version 3 of the NFS protocol (RFC 1813).
1231
1232           If unsure, say Y.
1233
1234 config NFSD_V3_ACL
1235         bool "NFS server support for the NFSv3 ACL protocol extension"
1236         depends on NFSD_V3
1237         select NFSD_V2_ACL
1238         help
1239           Solaris NFS servers support an auxiliary NFSv3 ACL protocol that
1240           never became an official part of the NFS version 3 protocol.
1241           This protocol extension allows applications on NFS clients to
1242           manipulate POSIX Access Control Lists on files residing on NFS
1243           servers.  NFS servers enforce POSIX ACLs on local files whether
1244           this protocol is available or not.
1245
1246           This option enables support in your system's NFS server for the
1247           NFSv3 ACL protocol extension allowing NFS clients to manipulate
1248           POSIX ACLs on files exported by your system's NFS server.  NFS
1249           clients which support the Solaris NFSv3 ACL protocol can then
1250           access and modify ACLs on your NFS server.
1251
1252           To store ACLs on your NFS server, you also need to enable ACL-
1253           related CONFIG options for your local file systems of choice.
1254
1255           If unsure, say N.
1256
1257 config NFSD_V4
1258         bool "NFS server support for NFS version 4 (EXPERIMENTAL)"
1259         depends on NFSD && PROC_FS && EXPERIMENTAL
1260         select NFSD_V3
1261         select FS_POSIX_ACL
1262         select RPCSEC_GSS_KRB5
1263         help
1264           This option enables support in your system's NFS server for
1265           version 4 of the NFS protocol (RFC 3530).
1266
1267           To export files using NFSv4, you need to install additional user
1268           space programs which can be found in the Linux nfs-utils package,
1269           available from http://linux-nfs.org/.
1270
1271           If unsure, say N.
1272
1273 config LOCKD
1274         tristate
1275
1276 config LOCKD_V4
1277         bool
1278         depends on NFSD_V3 || NFS_V3
1279         default y
1280
1281 config EXPORTFS
1282         tristate
1283
1284 config NFS_ACL_SUPPORT
1285         tristate
1286         select FS_POSIX_ACL
1287
1288 config NFS_COMMON
1289         bool
1290         depends on NFSD || NFS_FS
1291         default y
1292
1293 config SUNRPC
1294         tristate
1295
1296 config SUNRPC_GSS
1297         tristate
1298
1299 config SUNRPC_XPRT_RDMA
1300         tristate
1301         depends on SUNRPC && INFINIBAND && EXPERIMENTAL
1302         default SUNRPC && INFINIBAND
1303         help
1304           This option enables an RPC client transport capability that
1305           allows the NFS client to mount servers via an RDMA-enabled
1306           transport.
1307
1308           To compile RPC client RDMA transport support as a module,
1309           choose M here: the module will be called xprtrdma.
1310
1311           If unsure, say N.
1312
1313 config SUNRPC_REGISTER_V4
1314         bool "Register local RPC services via rpcbind v4 (EXPERIMENTAL)"
1315         depends on SUNRPC && EXPERIMENTAL
1316         default n
1317         help
1318           Sun added support for registering RPC services at an IPv6
1319           address by creating two new versions of the rpcbind protocol
1320           (RFC 1833).
1321
1322           This option enables support in the kernel RPC server for
1323           registering kernel RPC services via version 4 of the rpcbind
1324           protocol.  If you enable this option, you must run a portmapper
1325           daemon that supports rpcbind protocol version 4.
1326
1327           Serving NFS over IPv6 from knfsd (the kernel's NFS server)
1328           requires that you enable this option and use a portmapper that
1329           supports rpcbind version 4.
1330
1331           If unsure, say N to get traditional behavior (register kernel
1332           RPC services using only rpcbind version 2).  Distributions
1333           using the legacy Linux portmapper daemon must say N here.
1334
1335 config RPCSEC_GSS_KRB5
1336         tristate "Secure RPC: Kerberos V mechanism (EXPERIMENTAL)"
1337         depends on SUNRPC && EXPERIMENTAL
1338         select SUNRPC_GSS
1339         select CRYPTO
1340         select CRYPTO_MD5
1341         select CRYPTO_DES
1342         select CRYPTO_CBC
1343         help
1344           Choose Y here to enable Secure RPC using the Kerberos version 5
1345           GSS-API mechanism (RFC 1964).
1346
1347           Secure RPC calls with Kerberos require an auxiliary user-space
1348           daemon which may be found in the Linux nfs-utils package
1349           available from http://linux-nfs.org/.  In addition, user-space
1350           Kerberos support should be installed.
1351
1352           If unsure, say N.
1353
1354 config RPCSEC_GSS_SPKM3
1355         tristate "Secure RPC: SPKM3 mechanism (EXPERIMENTAL)"
1356         depends on SUNRPC && EXPERIMENTAL
1357         select SUNRPC_GSS
1358         select CRYPTO
1359         select CRYPTO_MD5
1360         select CRYPTO_DES
1361         select CRYPTO_CAST5
1362         select CRYPTO_CBC
1363         help
1364           Choose Y here to enable Secure RPC using the SPKM3 public key
1365           GSS-API mechansim (RFC 2025).
1366
1367           Secure RPC calls with SPKM3 require an auxiliary userspace
1368           daemon which may be found in the Linux nfs-utils package
1369           available from http://linux-nfs.org/.
1370
1371           If unsure, say N.
1372
1373 config SMB_FS
1374         tristate "SMB file system support (OBSOLETE, please use CIFS)"
1375         depends on INET
1376         select NLS
1377         help
1378           SMB (Server Message Block) is the protocol Windows for Workgroups
1379           (WfW), Windows 95/98, Windows NT and OS/2 Lan Manager use to share
1380           files and printers over local networks.  Saying Y here allows you to
1381           mount their file systems (often called "shares" in this context) and
1382           access them just like any other Unix directory.  Currently, this
1383           works only if the Windows machines use TCP/IP as the underlying
1384           transport protocol, and not NetBEUI.  For details, read
1385           <file:Documentation/filesystems/smbfs.txt> and the SMB-HOWTO,
1386           available from <http://www.tldp.org/docs.html#howto>.
1387
1388           Note: if you just want your box to act as an SMB *server* and make
1389           files and printing services available to Windows clients (which need
1390           to have a TCP/IP stack), you don't need to say Y here; you can use
1391           the program SAMBA (available from <ftp://ftp.samba.org/pub/samba/>)
1392           for that.
1393
1394           General information about how to connect Linux, Windows machines and
1395           Macs is on the WWW at <http://www.eats.com/linux_mac_win.html>.
1396
1397           To compile the SMB support as a module, choose M here:
1398           the module will be called smbfs.  Most people say N, however.
1399
1400 config SMB_NLS_DEFAULT
1401         bool "Use a default NLS"
1402         depends on SMB_FS
1403         help
1404           Enabling this will make smbfs use nls translations by default. You
1405           need to specify the local charset (CONFIG_NLS_DEFAULT) in the nls
1406           settings and you need to give the default nls for the SMB server as
1407           CONFIG_SMB_NLS_REMOTE.
1408
1409           The nls settings can be changed at mount time, if your smbmount
1410           supports that, using the codepage and iocharset parameters.
1411
1412           smbmount from samba 2.2.0 or later supports this.
1413
1414 config SMB_NLS_REMOTE
1415         string "Default Remote NLS Option"
1416         depends on SMB_NLS_DEFAULT
1417         default "cp437"
1418         help
1419           This setting allows you to specify a default value for which
1420           codepage the server uses. If this field is left blank no
1421           translations will be done by default. The local codepage/charset
1422           default to CONFIG_NLS_DEFAULT.
1423
1424           The nls settings can be changed at mount time, if your smbmount
1425           supports that, using the codepage and iocharset parameters.
1426
1427           smbmount from samba 2.2.0 or later supports this.
1428
1429 source "fs/cifs/Kconfig"
1430
1431 config NCP_FS
1432         tristate "NCP file system support (to mount NetWare volumes)"
1433         depends on IPX!=n || INET
1434         help
1435           NCP (NetWare Core Protocol) is a protocol that runs over IPX and is
1436           used by Novell NetWare clients to talk to file servers.  It is to
1437           IPX what NFS is to TCP/IP, if that helps.  Saying Y here allows you
1438           to mount NetWare file server volumes and to access them just like
1439           any other Unix directory.  For details, please read the file
1440           <file:Documentation/filesystems/ncpfs.txt> in the kernel source and
1441           the IPX-HOWTO from <http://www.tldp.org/docs.html#howto>.
1442
1443           You do not have to say Y here if you want your Linux box to act as a
1444           file *server* for Novell NetWare clients.
1445
1446           General information about how to connect Linux, Windows machines and
1447           Macs is on the WWW at <http://www.eats.com/linux_mac_win.html>.
1448
1449           To compile this as a module, choose M here: the module will be called
1450           ncpfs.  Say N unless you are connected to a Novell network.
1451
1452 source "fs/ncpfs/Kconfig"
1453
1454 config CODA_FS
1455         tristate "Coda file system support (advanced network fs)"
1456         depends on INET
1457         help
1458           Coda is an advanced network file system, similar to NFS in that it
1459           enables you to mount file systems of a remote server and access them
1460           with regular Unix commands as if they were sitting on your hard
1461           disk.  Coda has several advantages over NFS: support for
1462           disconnected operation (e.g. for laptops), read/write server
1463           replication, security model for authentication and encryption,
1464           persistent client caches and write back caching.
1465
1466           If you say Y here, your Linux box will be able to act as a Coda
1467           *client*.  You will need user level code as well, both for the
1468           client and server.  Servers are currently user level, i.e. they need
1469           no kernel support.  Please read
1470           <file:Documentation/filesystems/coda.txt> and check out the Coda
1471           home page <http://www.coda.cs.cmu.edu/>.
1472
1473           To compile the coda client support as a module, choose M here: the
1474           module will be called coda.
1475
1476 config AFS_FS
1477         tristate "Andrew File System support (AFS) (EXPERIMENTAL)"
1478         depends on INET && EXPERIMENTAL
1479         select AF_RXRPC
1480         help
1481           If you say Y here, you will get an experimental Andrew File System
1482           driver. It currently only supports unsecured read-only AFS access.
1483
1484           See <file:Documentation/filesystems/afs.txt> for more information.
1485
1486           If unsure, say N.
1487
1488 config AFS_DEBUG
1489         bool "AFS dynamic debugging"
1490         depends on AFS_FS
1491         help
1492           Say Y here to make runtime controllable debugging messages appear.
1493
1494           See <file:Documentation/filesystems/afs.txt> for more information.
1495
1496           If unsure, say N.
1497
1498 config 9P_FS
1499         tristate "Plan 9 Resource Sharing Support (9P2000) (Experimental)"
1500         depends on INET && NET_9P && EXPERIMENTAL
1501         help
1502           If you say Y here, you will get experimental support for
1503           Plan 9 resource sharing via the 9P2000 protocol.
1504
1505           See <http://v9fs.sf.net> for more information.
1506
1507           If unsure, say N.
1508
1509 endif # NETWORK_FILESYSTEMS
1510
1511 if BLOCK
1512 menu "Partition Types"
1513
1514 source "fs/partitions/Kconfig"
1515
1516 endmenu
1517 endif
1518
1519 source "fs/nls/Kconfig"
1520 source "fs/dlm/Kconfig"
1521
1522 endmenu