patch-2_6_7-vs1_9_1_12
[linux-2.6.git] / fs / Kconfig
1 #
2 # File system configuration
3 #
4
5 menu "File systems"
6
7 config EXT2_FS
8         tristate "Second extended fs support"
9         help
10           This is the de facto standard Linux file system (method to organize
11           files on a storage device) for hard disks.
12
13           You want to say Y here, unless you intend to use Linux exclusively
14           from inside a DOS partition using the UMSDOS file system. The
15           advantage of the latter is that you can get away without
16           repartitioning your hard drive (which often implies backing
17           everything up and restoring afterwards); the disadvantage is that
18           Linux becomes susceptible to DOS viruses and that UMSDOS is somewhat
19           slower than ext2fs. Even if you want to run Linux in this fashion,
20           it might be a good idea to have ext2fs around: it enables you to
21           read more floppy disks and facilitates the transition to a *real*
22           Linux partition later. Another (rare) case which doesn't require
23           ext2fs is a diskless Linux box which mounts all files over the
24           network using NFS (in this case it's sufficient to say Y to "NFS
25           file system support" below). Saying Y here will enlarge your kernel
26           by about 44 KB.
27
28           The Ext2fs-Undeletion mini-HOWTO, available from
29           <http://www.tldp.org/docs.html#howto>, gives information about
30           how to retrieve deleted files on ext2fs file systems.
31
32           To change the behavior of ext2 file systems, you can use the tune2fs
33           utility ("man tune2fs"). To modify attributes of files and
34           directories on ext2 file systems, use chattr ("man chattr").
35
36           Ext2fs partitions can be read from within DOS using the ext2tool
37           command line tool package (available from
38           <ftp://ibiblio.org/pub/Linux/system/filesystems/ext2/>) and from
39           within Windows NT using the ext2nt command line tool package from
40           <ftp://ibiblio.org/pub/Linux/utils/dos/>.  Explore2fs is a
41           graphical explorer for ext2fs partitions which runs on Windows 95
42           and Windows NT and includes experimental write support; it is
43           available from
44           <http://jnewbigin-pc.it.swin.edu.au/Linux/Explore2fs.htm>.
45
46           To compile this file system support as a module, choose M here: the
47           module will be called ext2.  Be aware however that the file system
48           of your root partition (the one containing the directory /) cannot
49           be compiled as a module, and so this could be dangerous.  Most
50           everyone wants to say Y here.
51
52 config EXT2_FS_XATTR
53         bool "Ext2 extended attributes"
54         depends on EXT2_FS
55         help
56           Extended attributes are name:value pairs associated with inodes by
57           the kernel or by users (see the attr(5) manual page, or visit
58           <http://acl.bestbits.at/> for details).
59
60           If unsure, say N.
61
62 config EXT2_FS_POSIX_ACL
63         bool "Ext2 POSIX Access Control Lists"
64         depends on EXT2_FS_XATTR
65         help
66           Posix Access Control Lists (ACLs) support permissions for users and
67           groups beyond the owner/group/world scheme.
68
69           To learn more about Access Control Lists, visit the Posix ACLs for
70           Linux website <http://acl.bestbits.at/>.
71
72           If you don't know what Access Control Lists are, say N
73
74 config EXT2_FS_SECURITY
75         bool "Ext2 Security Labels"
76         depends on EXT2_FS_XATTR
77         help
78           Security labels support alternative access control models
79           implemented by security modules like SELinux.  This option
80           enables an extended attribute handler for file security
81           labels in the ext2 filesystem.
82
83           If you are not using a security module that requires using
84           extended attributes for file security labels, say N.
85
86 config EXT3_FS
87         tristate "Ext3 journalling file system support"
88         help
89           This is the journaling version of the Second extended file system
90           (often called ext3), the de facto standard Linux file system
91           (method to organize files on a storage device) for hard disks.
92
93           The journaling code included in this driver means you do not have
94           to run e2fsck (file system checker) on your file systems after a
95           crash.  The journal keeps track of any changes that were being made
96           at the time the system crashed, and can ensure that your file system
97           is consistent without the need for a lengthy check.
98
99           Other than adding the journal to the file system, the on-disk format
100           of ext3 is identical to ext2.  It is possible to freely switch
101           between using the ext3 driver and the ext2 driver, as long as the
102           file system has been cleanly unmounted, or e2fsck is run on the file
103           system.
104
105           To add a journal on an existing ext2 file system or change the
106           behavior of ext3 file systems, you can use the tune2fs utility ("man
107           tune2fs").  To modify attributes of files and directories on ext3
108           file systems, use chattr ("man chattr").  You need to be using
109           e2fsprogs version 1.20 or later in order to create ext3 journals
110           (available at <http://sourceforge.net/projects/e2fsprogs/>).
111
112           To compile this file system support as a module, choose M here: the
113           module will be called ext3.  Be aware however that the file system
114           of your root partition (the one containing the directory /) cannot
115           be compiled as a module, and so this may be dangerous.
116
117 config EXT3_FS_XATTR
118         bool "Ext3 extended attributes"
119         depends on EXT3_FS
120         default y
121         help
122           Extended attributes are name:value pairs associated with inodes by
123           the kernel or by users (see the attr(5) manual page, or visit
124           <http://acl.bestbits.at/> for details).
125
126           If unsure, say N.
127
128           You need this for POSIX ACL support on ext3.
129
130 config EXT3_FS_POSIX_ACL
131         bool "Ext3 POSIX Access Control Lists"
132         depends on EXT3_FS_XATTR
133         help
134           Posix Access Control Lists (ACLs) support permissions for users and
135           groups beyond the owner/group/world scheme.
136
137           To learn more about Access Control Lists, visit the Posix ACLs for
138           Linux website <http://acl.bestbits.at/>.
139
140           If you don't know what Access Control Lists are, say N
141
142 config EXT3_FS_SECURITY
143         bool "Ext3 Security Labels"
144         depends on EXT3_FS_XATTR
145         help
146           Security labels support alternative access control models
147           implemented by security modules like SELinux.  This option
148           enables an extended attribute handler for file security
149           labels in the ext3 filesystem.
150
151           If you are not using a security module that requires using
152           extended attributes for file security labels, say N.
153
154 config JBD
155 # CONFIG_JBD could be its own option (even modular), but until there are
156 # other users than ext3, we will simply make it be the same as CONFIG_EXT3_FS
157 # dep_tristate '  Journal Block Device support (JBD for ext3)' CONFIG_JBD $CONFIG_EXT3_FS
158         tristate
159         default EXT3_FS
160         help
161           This is a generic journaling layer for block devices.  It is
162           currently used by the ext3 file system, but it could also be used to
163           add journal support to other file systems or block devices such as
164           RAID or LVM.
165
166           If you are using the ext3 file system, you need to say Y here. If
167           you are not using ext3 then you will probably want to say N.
168
169           To compile this device as a module, choose M here: the module will be
170           called jbd.  If you are compiling ext3 into the kernel, you cannot
171           compile this code as a module.
172
173 config JBD_DEBUG
174         bool "JBD (ext3) debugging support"
175         depends on JBD
176         help
177           If you are using the ext3 journaled file system (or potentially any
178           other file system/device using JBD), this option allows you to
179           enable debugging output while the system is running, in order to
180           help track down any problems you are having.  By default the
181           debugging output will be turned off.
182
183           If you select Y here, then you will be able to turn on debugging
184           with "echo N > /proc/sys/fs/jbd-debug", where N is a number between
185           1 and 5, the higher the number, the more debugging output is
186           generated.  To turn debugging off again, do
187           "echo 0 > /proc/sys/fs/jbd-debug".
188
189 config FS_MBCACHE
190 # Meta block cache for Extended Attributes (ext2/ext3)
191         tristate
192         depends on EXT2_FS_XATTR || EXT3_FS_XATTR
193         default y if EXT2_FS=y || EXT3_FS=y
194         default m if EXT2_FS=m || EXT3_FS=m
195
196 config REISERFS_FS
197         tristate "Reiserfs support"
198         help
199           Stores not just filenames but the files themselves in a balanced
200           tree.  Uses journaling.
201
202           Balanced trees are more efficient than traditional file system
203           architectural foundations.
204
205           In general, ReiserFS is as fast as ext2, but is very efficient with
206           large directories and small files.  Additional patches are needed
207           for NFS and quotas, please see <http://www.namesys.com/> for links.
208
209           It is more easily extended to have features currently found in
210           database and keyword search systems than block allocation based file
211           systems are.  The next version will be so extended, and will support
212           plugins consistent with our motto ``It takes more than a license to
213           make source code open.''
214
215           Read <http://www.namesys.com/> to learn more about reiserfs.
216
217           Sponsored by Threshold Networks, Emusic.com, and Bigstorage.com.
218
219           If you like it, you can pay us to add new features to it that you
220           need, buy a support contract, or pay us to port it to another OS.
221
222 config REISERFS_CHECK
223         bool "Enable reiserfs debug mode"
224         depends on REISERFS_FS
225         help
226           If you set this to Y, then ReiserFS will perform every check it can
227           possibly imagine of its internal consistency throughout its
228           operation.  It will also go substantially slower.  More than once we
229           have forgotten that this was on, and then gone despondent over the
230           latest benchmarks.:-) Use of this option allows our team to go all
231           out in checking for consistency when debugging without fear of its
232           effect on end users.  If you are on the verge of sending in a bug
233           report, say Y and you might get a useful error message.  Almost
234           everyone should say N.
235
236 config REISERFS_PROC_INFO
237         bool "Stats in /proc/fs/reiserfs"
238         depends on REISERFS_FS
239         help
240           Create under /proc/fs/reiserfs a hierarchy of files, displaying
241           various ReiserFS statistics and internal data at the expense of
242           making your kernel or module slightly larger (+8 KB). This also
243           increases the amount of kernel memory required for each mount.
244           Almost everyone but ReiserFS developers and people fine-tuning
245           reiserfs or tracing problems should say N.
246
247 config REISERFS_FS_XATTR
248         bool "ReiserFS extended attributes"
249         depends on REISERFS_FS
250         help
251           Extended attributes are name:value pairs associated with inodes by
252           the kernel or by users (see the attr(5) manual page, or visit
253           <http://acl.bestbits.at/> for details).
254
255           If unsure, say N.
256
257 config REISERFS_FS_POSIX_ACL
258         bool "ReiserFS POSIX Access Control Lists"
259         depends on REISERFS_FS_XATTR
260         help
261           Posix Access Control Lists (ACLs) support permissions for users and
262           groups beyond the owner/group/world scheme.
263
264           To learn more about Access Control Lists, visit the Posix ACLs for
265           Linux website <http://acl.bestbits.at/>.
266
267           If you don't know what Access Control Lists are, say N
268
269 config REISERFS_FS_SECURITY
270         bool "ReiserFS Security Labels"
271         depends on REISERFS_FS_XATTR
272         help
273           Security labels support alternative access control models
274           implemented by security modules like SELinux.  This option
275           enables an extended attribute handler for file security
276           labels in the ReiserFS filesystem.
277
278           If you are not using a security module that requires using
279           extended attributes for file security labels, say N.
280
281 config JFS_FS
282         tristate "JFS filesystem support"
283         select NLS
284         help
285           This is a port of IBM's Journaled Filesystem .  More information is
286           available in the file Documentation/filesystems/jfs.txt.
287
288           If you do not intend to use the JFS filesystem, say N.
289
290 config JFS_POSIX_ACL
291         bool "JFS POSIX Access Control Lists"
292         depends on JFS_FS
293         help
294           Posix Access Control Lists (ACLs) support permissions for users and
295           groups beyond the owner/group/world scheme.
296
297           To learn more about Access Control Lists, visit the Posix ACLs for
298           Linux website <http://acl.bestbits.at/>.
299
300           If you don't know what Access Control Lists are, say N
301
302 config JFS_DEBUG
303         bool "JFS debugging"
304         depends on JFS_FS
305         help
306           If you are experiencing any problems with the JFS filesystem, say
307           Y here.  This will result in additional debugging messages to be
308           written to the system log.  Under normal circumstances, this
309           results in very little overhead.
310
311 config JFS_STATISTICS
312         bool "JFS statistics"
313         depends on JFS_FS
314         help
315           Enabling this option will cause statistics from the JFS file system
316           to be made available to the user in the /proc/fs/jfs/ directory.
317
318 config FS_POSIX_ACL
319 # Posix ACL utility routines (for now, only ext2/ext3/jfs/reiserfs)
320 #
321 # NOTE: you can implement Posix ACLs without these helpers (XFS does).
322 #       Never use this symbol for ifdefs.
323 #
324         bool
325         depends on EXT2_FS_POSIX_ACL || EXT3_FS_POSIX_ACL || JFS_POSIX_ACL || REISERFS_FS_POSIX_ACL
326         default y
327
328 config XFS_FS
329         tristate "XFS filesystem support"
330         help
331           XFS is a high performance journaling filesystem which originated
332           on the SGI IRIX platform.  It is completely multi-threaded, can
333           support large files and large filesystems, extended attributes,
334           variable block sizes, is extent based, and makes extensive use of
335           Btrees (directories, extents, free space) to aid both performance
336           and scalability.
337
338           Refer to the documentation at <http://oss.sgi.com/projects/xfs/>
339           for complete details.  This implementation is on-disk compatible
340           with the IRIX version of XFS.
341
342           To compile this file system support as a module, choose M here: the
343           module will be called xfs.  Be aware, however, that if the file
344           system of your root partition is compiled as a module, you'll need
345           to use an initial ramdisk (initrd) to boot.
346
347 config XFS_RT
348         bool "Realtime support (EXPERIMENTAL)"
349         depends on XFS_FS && EXPERIMENTAL
350         help
351           If you say Y here you will be able to mount and use XFS filesystems
352           which contain a realtime subvolume. The realtime subvolume is a
353           separate area of disk space where only file data is stored. The
354           realtime subvolume is designed to provide very deterministic
355           data rates suitable for media streaming applications.
356
357           See the xfs man page in section 5 for a bit more information.
358
359           This feature is unsupported at this time, is not yet fully
360           functional, and may cause serious problems.
361
362           If unsure, say N.
363
364 config XFS_QUOTA
365         bool "Quota support"
366         depends on XFS_FS
367         help
368           If you say Y here, you will be able to set limits for disk usage on
369           a per user and/or a per group basis under XFS.  XFS considers quota
370           information as filesystem metadata and uses journaling to provide a
371           higher level guarantee of consistency.  The on-disk data format for
372           quota is also compatible with the IRIX version of XFS, allowing a
373           filesystem to be migrated between Linux and IRIX without any need
374           for conversion.
375
376           If unsure, say N.  More comprehensive documentation can be found in
377           README.quota in the xfsprogs package.  XFS quota can be used either
378           with or without the generic quota support enabled (CONFIG_QUOTA) -
379           they are completely independent subsystems.
380
381 config XFS_SECURITY
382         bool "Security Label support"
383         depends on XFS_FS
384         help
385           Security labels support alternative access control models
386           implemented by security modules like SELinux.  This option
387           enables an extended attribute namespace for inode security
388           labels in the XFS filesystem.
389
390           If you are not using a security module that requires using
391           extended attributes for inode security labels, say N.
392
393 config XFS_POSIX_ACL
394         bool "POSIX ACL support"
395         depends on XFS_FS
396         help
397           POSIX Access Control Lists (ACLs) support permissions for users and
398           groups beyond the owner/group/world scheme.
399
400           To learn more about Access Control Lists, visit the POSIX ACLs for
401           Linux website <http://acl.bestbits.at/>.
402
403           If you don't know what Access Control Lists are, say N.
404
405 config MINIX_FS
406         tristate "Minix fs support"
407         help
408           Minix is a simple operating system used in many classes about OS's.
409           The minix file system (method to organize files on a hard disk
410           partition or a floppy disk) was the original file system for Linux,
411           but has been superseded by the second extended file system ext2fs.
412           You don't want to use the minix file system on your hard disk
413           because of certain built-in restrictions, but it is sometimes found
414           on older Linux floppy disks.  This option will enlarge your kernel
415           by about 28 KB. If unsure, say N.
416
417           To compile this file system support as a module, choose M here: the
418           module will be called minix.  Note that the file system of your root
419           partition (the one containing the directory /) cannot be compiled as
420           a module.
421
422 config ROMFS_FS
423         tristate "ROM file system support"
424         ---help---
425           This is a very small read-only file system mainly intended for
426           initial ram disks of installation disks, but it could be used for
427           other read-only media as well.  Read
428           <file:Documentation/filesystems/romfs.txt> for details.
429
430           To compile this file system support as a module, choose M here: the
431           module will be called romfs.  Note that the file system of your
432           root partition (the one containing the directory /) cannot be a
433           module.
434
435           If you don't know whether you need it, then you don't need it:
436           answer N.
437
438 config QUOTA
439         bool "Quota support"
440         help
441           If you say Y here, you will be able to set per user limits for disk
442           usage (also called disk quotas). Currently, it works for the
443           ext2, ext3, and reiserfs file system. ext3 also supports journalled
444           quotas for which you don't need to run quotacheck(8) after an unclean
445           shutdown. You need additional software in order to use quota support
446           (you can download sources from
447           <http://www.sf.net/projects/linuxquota/>). For further details, read
448           the Quota mini-HOWTO, available from
449           <http://www.tldp.org/docs.html#howto>, or the documentation provided
450           with the quota tools. Probably the quota support is only useful for
451           multi user systems. If unsure, say N.
452
453 config QFMT_V1
454         tristate "Old quota format support"
455         depends on QUOTA
456         help
457           This quota format was (is) used by kernels earlier than 2.4.22. If
458           you have quota working and you don't want to convert to new quota
459           format say Y here.
460
461 config QFMT_V2
462         tristate "Quota format v2 support"
463         depends on QUOTA
464         help
465           This quota format allows using quotas with 32-bit UIDs/GIDs. If you
466           need this functionality say Y here. Note that you will need recent
467           quota utilities (>= 3.01) for new quota format with this kernel.
468
469 config QUOTACTL
470         bool
471         depends on XFS_QUOTA || QUOTA
472         default y
473
474 config AUTOFS_FS
475         tristate "Kernel automounter support"
476         help
477           The automounter is a tool to automatically mount remote file systems
478           on demand. This implementation is partially kernel-based to reduce
479           overhead in the already-mounted case; this is unlike the BSD
480           automounter (amd), which is a pure user space daemon.
481
482           To use the automounter you need the user-space tools from the autofs
483           package; you can find the location in <file:Documentation/Changes>.
484           You also want to answer Y to "NFS file system support", below.
485
486           If you want to use the newer version of the automounter with more
487           features, say N here and say Y to "Kernel automounter v4 support",
488           below.
489
490           To compile this support as a module, choose M here: the module will be
491           called autofs.
492
493           If you are not a part of a fairly large, distributed network, you
494           probably do not need an automounter, and can say N here.
495
496 config AUTOFS4_FS
497         tristate "Kernel automounter version 4 support (also supports v3)"
498         help
499           The automounter is a tool to automatically mount remote file systems
500           on demand. This implementation is partially kernel-based to reduce
501           overhead in the already-mounted case; this is unlike the BSD
502           automounter (amd), which is a pure user space daemon.
503
504           To use the automounter you need the user-space tools from
505           <ftp://ftp.kernel.org/pub/linux/daemons/autofs/v4/>; you also
506           want to answer Y to "NFS file system support", below.
507
508           To compile this support as a module, choose M here: the module will be
509           called autofs4.  You will need to add "alias autofs autofs4" to your
510           modules configuration file.
511
512           If you are not a part of a fairly large, distributed network or
513           don't have a laptop which needs to dynamically reconfigure to the
514           local network, you probably do not need an automounter, and can say
515           N here.
516
517 menu "CD-ROM/DVD Filesystems"
518
519 config ISO9660_FS
520         tristate "ISO 9660 CDROM file system support"
521         help
522           This is the standard file system used on CD-ROMs.  It was previously
523           known as "High Sierra File System" and is called "hsfs" on other
524           Unix systems.  The so-called Rock-Ridge extensions which allow for
525           long Unix filenames and symbolic links are also supported by this
526           driver.  If you have a CD-ROM drive and want to do more with it than
527           just listen to audio CDs and watch its LEDs, say Y (and read
528           <file:Documentation/filesystems/isofs.txt> and the CD-ROM-HOWTO,
529           available from <http://www.tldp.org/docs.html#howto>), thereby
530           enlarging your kernel by about 27 KB; otherwise say N.
531
532           To compile this file system support as a module, choose M here: the
533           module will be called isofs.
534
535 config JOLIET
536         bool "Microsoft Joliet CDROM extensions"
537         depends on ISO9660_FS
538         select NLS
539         help
540           Joliet is a Microsoft extension for the ISO 9660 CD-ROM file system
541           which allows for long filenames in unicode format (unicode is the
542           new 16 bit character code, successor to ASCII, which encodes the
543           characters of almost all languages of the world; see
544           <http://www.unicode.org/> for more information).  Say Y here if you
545           want to be able to read Joliet CD-ROMs under Linux.
546
547 config ZISOFS
548         bool "Transparent decompression extension"
549         depends on ISO9660_FS
550         select ZLIB_INFLATE
551         help
552           This is a Linux-specific extension to RockRidge which lets you store
553           data in compressed form on a CD-ROM and have it transparently
554           decompressed when the CD-ROM is accessed.  See
555           <http://www.kernel.org/pub/linux/utils/fs/zisofs/> for the tools
556           necessary to create such a filesystem.  Say Y here if you want to be
557           able to read such compressed CD-ROMs.
558
559 config ZISOFS_FS
560 # for fs/nls/Config.in
561         tristate
562         depends on ZISOFS
563         default ISO9660_FS
564
565 config UDF_FS
566         tristate "UDF file system support"
567         help
568           This is the new file system used on some CD-ROMs and DVDs. Say Y if
569           you intend to mount DVD discs or CDRW's written in packet mode, or
570           if written to by other UDF utilities, such as DirectCD.
571           Please read <file:Documentation/filesystems/udf.txt>.
572
573           To compile this file system support as a module, choose M here: the
574           module will be called udf.
575
576           If unsure, say N.
577
578 endmenu
579
580 menu "DOS/FAT/NT Filesystems"
581
582 config FAT_FS
583         tristate "DOS FAT fs support"
584         select NLS
585         help
586           If you want to use one of the FAT-based file systems (the MS-DOS,
587           VFAT (Windows 95) and UMSDOS (used to run Linux on top of an
588           ordinary DOS partition) file systems), then you must say Y or M here
589           to include FAT support. You will then be able to mount partitions or
590           diskettes with FAT-based file systems and transparently access the
591           files on them, i.e. MSDOS files will look and behave just like all
592           other Unix files.
593
594           This FAT support is not a file system in itself, it only provides
595           the foundation for the other file systems. You will have to say Y or
596           M to at least one of "MSDOS fs support" or "VFAT fs support" in
597           order to make use of it.
598
599           Another way to read and write MSDOS floppies and hard drive
600           partitions from within Linux (but not transparently) is with the
601           mtools ("man mtools") program suite. You don't need to say Y here in
602           order to do that.
603
604           If you need to move large files on floppies between a DOS and a
605           Linux box, say Y here, mount the floppy under Linux with an MSDOS
606           file system and use GNU tar's M option. GNU tar is a program
607           available for Unix and DOS ("man tar" or "info tar").
608
609           It is now also becoming possible to read and write compressed FAT
610           file systems; read <file:Documentation/filesystems/fat_cvf.txt> for
611           details.
612
613           The FAT support will enlarge your kernel by about 37 KB. If unsure,
614           say Y.
615
616           To compile this as a module, choose M here: the module will be called
617           fat.  Note that if you compile the FAT support as a module, you
618           cannot compile any of the FAT-based file systems into the kernel
619           -- they will have to be modules as well.
620           The file system of your root partition (the one containing the
621           directory /) cannot be a module, so don't say M here if you intend
622           to use UMSDOS as your root file system.
623
624 config MSDOS_FS
625         tristate "MSDOS fs support"
626         depends on FAT_FS
627         help
628           This allows you to mount MSDOS partitions of your hard drive (unless
629           they are compressed; to access compressed MSDOS partitions under
630           Linux, you can either use the DOS emulator DOSEMU, described in the
631           DOSEMU-HOWTO, available from
632           <http://www.tldp.org/docs.html#howto>, or try dmsdosfs in
633           <ftp://ibiblio.org/pub/Linux/system/filesystems/dosfs/>. If you
634           intend to use dosemu with a non-compressed MSDOS partition, say Y
635           here) and MSDOS floppies. This means that file access becomes
636           transparent, i.e. the MSDOS files look and behave just like all
637           other Unix files.
638
639           If you want to use UMSDOS, the Unix-like file system on top of a
640           DOS file system, which allows you to run Linux from within a DOS
641           partition without repartitioning, you'll have to say Y or M here.
642
643           If you have Windows 95 or Windows NT installed on your MSDOS
644           partitions, you should use the VFAT file system (say Y to "VFAT fs
645           support" below), or you will not be able to see the long filenames
646           generated by Windows 95 / Windows NT.
647
648           This option will enlarge your kernel by about 7 KB. If unsure,
649           answer Y. This will only work if you said Y to "DOS FAT fs support"
650           as well. To compile this as a module, choose M here: the module will
651           be called msdos.
652
653 config VFAT_FS
654         tristate "VFAT (Windows-95) fs support"
655         depends on FAT_FS
656         help
657           This option provides support for normal Windows file systems with
658           long filenames.  That includes non-compressed FAT-based file systems
659           used by Windows 95, Windows 98, Windows NT 4.0, and the Unix
660           programs from the mtools package.
661
662           You cannot use the VFAT file system for your Linux root partition
663           (the one containing the directory /); use UMSDOS instead if you
664           want to run Linux from within a DOS partition (i.e. say Y to
665           "Unix like fs on top of std MSDOS fs", below).
666
667           The VFAT support enlarges your kernel by about 10 KB and it only
668           works if you said Y to the "DOS FAT fs support" above.  Please read
669           the file <file:Documentation/filesystems/vfat.txt> for details.  If
670           unsure, say Y.
671
672           To compile this as a module, choose M here: the module will be called
673           vfat.
674
675 config UMSDOS_FS
676 #dep_tristate '    UMSDOS: Unix-like file system on top of standard MSDOS fs' CONFIG_UMSDOS_FS $CONFIG_MSDOS_FS
677 # UMSDOS is temprory broken
678         bool
679         help
680           Say Y here if you want to run Linux from within an existing DOS
681           partition of your hard drive. The advantage of this is that you can
682           get away without repartitioning your hard drive (which often implies
683           backing everything up and restoring afterwards) and hence you're
684           able to quickly try out Linux or show it to your friends; the
685           disadvantage is that Linux becomes susceptible to DOS viruses and
686           that UMSDOS is somewhat slower than ext2fs.  Another use of UMSDOS
687           is to write files with long unix filenames to MSDOS floppies; it
688           also allows Unix-style soft-links and owner/permissions of files on
689           MSDOS floppies.  You will need a program called umssync in order to
690           make use of UMSDOS; read
691           <file:Documentation/filesystems/umsdos.txt>.
692
693           To get utilities for initializing/checking UMSDOS file system, or
694           latest patches and/or information, visit the UMSDOS home page at
695           <http://www.voyager.hr/~mnalis/umsdos/>.
696
697           This option enlarges your kernel by about 28 KB and it only works if
698           you said Y to both "DOS FAT fs support" and "MSDOS fs support"
699           above.  To compile this as a module, choose M here: the module will be
700           called umsdos.  Note that the file system of your root partition
701           (the one containing the directory /) cannot be a module, so saying M
702           could be dangerous.  If unsure, say N.
703
704 config NTFS_FS
705         tristate "NTFS file system support"
706         select NLS
707         help
708           NTFS is the file system of Microsoft Windows NT, 2000, XP and 2003.
709
710           Saying Y or M here enables read support.  There is partial, but
711           safe, write support available.  For write support you must also
712           say Y to "NTFS write support" below.
713
714           There are also a number of user-space tools available, called
715           ntfsprogs.  These include ntfsundelete and ntfsresize, that work
716           without NTFS support enabled in the kernel.
717
718           This is a rewrite from scratch of Linux NTFS support and replaced
719           the old NTFS code starting with Linux 2.5.11.  A backport to
720           the Linux 2.4 kernel series is separately available as a patch
721           from the project web site.
722
723           For more information see <file:Documentation/filesystems/ntfs.txt>
724           and <http://linux-ntfs.sourceforge.net/>.
725
726           To compile this file system support as a module, choose M here: the
727           module will be called ntfs.
728
729           If you are not using Windows NT, 2000, XP or 2003 in addition to
730           Linux on your computer it is safe to say N.
731
732 config NTFS_DEBUG
733         bool "NTFS debugging support"
734         depends on NTFS_FS
735         help
736           If you are experiencing any problems with the NTFS file system, say
737           Y here.  This will result in additional consistency checks to be
738           performed by the driver as well as additional debugging messages to
739           be written to the system log.  Note that debugging messages are
740           disabled by default.  To enable them, supply the option debug_msgs=1
741           at the kernel command line when booting the kernel or as an option
742           to insmod when loading the ntfs module.  Once the driver is active,
743           you can enable debugging messages by doing (as root):
744           echo 1 > /proc/sys/fs/ntfs-debug
745           Replacing the "1" with "0" would disable debug messages.
746
747           If you leave debugging messages disabled, this results in little
748           overhead, but enabling debug messages results in very significant
749           slowdown of the system.
750
751           When reporting bugs, please try to have available a full dump of
752           debugging messages while the misbehaviour was occurring.
753
754 config NTFS_RW
755         bool "NTFS write support"
756         depends on NTFS_FS
757         help
758           This enables the partial, but safe, write support in the NTFS driver.
759
760           The only supported operation is overwriting existing files, without
761           changing the file length.  No file or directory creation, deletion or
762           renaming is possible.  Note only non-resident files can be written to
763           so you may find that some very small files (<500 bytes or so) cannot
764           be written to.
765
766           While we cannot guarantee that it will not damage any data, we have
767           so far not received a single report where the driver would have
768           damaged someones data so we assume it is perfectly safe to use.
769
770           Note:  While write support is safe in this version (a rewrite from
771           scratch of the NTFS support), it should be noted that the old NTFS
772           write support, included in Linux 2.5.10 and before (since 1997),
773           is not safe.
774
775           This is currently useful with TopologiLinux.  TopologiLinux is run
776           on top of any DOS/Microsoft Windows system without partitioning your
777           hard disk.  Unlike other Linux distributions TopologiLinux does not
778           need its own partition.  For more information see
779           <http://topologi-linux.sourceforge.net/>
780
781           It is perfectly safe to say N here.
782
783 endmenu
784
785 menu "Pseudo filesystems"
786
787 config PROC_FS
788         bool "/proc file system support"
789         help
790           This is a virtual file system providing information about the status
791           of the system. "Virtual" means that it doesn't take up any space on
792           your hard disk: the files are created on the fly by the kernel when
793           you try to access them. Also, you cannot read the files with older
794           version of the program less: you need to use more or cat.
795
796           It's totally cool; for example, "cat /proc/interrupts" gives
797           information about what the different IRQs are used for at the moment
798           (there is a small number of Interrupt ReQuest lines in your computer
799           that are used by the attached devices to gain the CPU's attention --
800           often a source of trouble if two devices are mistakenly configured
801           to use the same IRQ). The program procinfo to display some
802           information about your system gathered from the /proc file system.
803
804           Before you can use the /proc file system, it has to be mounted,
805           meaning it has to be given a location in the directory hierarchy.
806           That location should be /proc. A command such as "mount -t proc proc
807           /proc" or the equivalent line in /etc/fstab does the job.
808
809           The /proc file system is explained in the file
810           <file:Documentation/filesystems/proc.txt> and on the proc(5) manpage
811           ("man 5 proc").
812
813           This option will enlarge your kernel by about 67 KB. Several
814           programs depend on this, so everyone should say Y here.
815
816 config PROC_KCORE
817         bool
818         default y if !ARM
819
820 config SYSFS
821         bool "sysfs file system support" if EMBEDDED
822         default y
823         help
824         The sysfs filesystem is a virtual filesystem that the kernel uses to
825         export internal kernel objects, their attributes, and their
826         relationships to one another.
827
828         Users can use sysfs to ascertain useful information about the running
829         kernel, such as the devices the kernel has discovered on each bus and
830         which driver each is bound to. sysfs can also be used to tune devices
831         and other kernel subsystems.
832
833         Some system agents rely on the information in sysfs to operate.
834         /sbin/hotplug uses device and object attributes in sysfs to assist in
835         delegating policy decisions, like persistantly naming devices.
836
837         sysfs is currently used by the block subsystem to mount the root
838         partition.  If sysfs is disabled you must specify the boot device on
839         the kernel boot command line via its major and minor numbers.  For
840         example, "root=03:01" for /dev/hda1.
841
842         Designers of embedded systems may wish to say N here to conserve space.
843
844 config DEVFS_FS
845         bool "/dev file system support (OBSOLETE)"
846         depends on EXPERIMENTAL
847         help
848           This is support for devfs, a virtual file system (like /proc) which
849           provides the file system interface to device drivers, normally found
850           in /dev. Devfs does not depend on major and minor number
851           allocations. Device drivers register entries in /dev which then
852           appear automatically, which means that the system administrator does
853           not have to create character and block special device files in the
854           /dev directory using the mknod command (or MAKEDEV script) anymore.
855
856           This is work in progress. If you want to use this, you *must* read
857           the material in <file:Documentation/filesystems/devfs/>, especially
858           the file README there.
859
860           Note that devfs no longer manages /dev/pts!  If you are using UNIX98
861           ptys, you will also need to mount the /dev/pts filesystem (devpts).
862
863           Note that devfs has been obsoleted by udev,
864           <http://www.kernel.org/pub/linux/utils/kernel/hotplug/>.
865           It has been stripped down to a bare minimum and is only provided for
866           legacy installations that use its naming scheme which is
867           unfortunately different from the names normal Linux installations
868           use.
869
870           If unsure, say N.
871
872 config DEVFS_MOUNT
873         bool "Automatically mount at boot"
874         depends on DEVFS_FS
875         help
876           This option appears if you have CONFIG_DEVFS_FS enabled. Setting
877           this to 'Y' will make the kernel automatically mount devfs onto /dev
878           when the system is booted, before the init thread is started.
879           You can override this with the "devfs=nomount" boot option.
880
881           If unsure, say N.
882
883 config DEVFS_DEBUG
884         bool "Debug devfs"
885         depends on DEVFS_FS
886         help
887           If you say Y here, then the /dev file system code will generate
888           debugging messages. See the file
889           <file:Documentation/filesystems/devfs/boot-options> for more
890           details.
891
892           If unsure, say N.
893
894 config DEVPTS_FS_XATTR
895         bool "/dev/pts Extended Attributes"
896         depends on UNIX98_PTYS
897         help
898           Extended attributes are name:value pairs associated with inodes by
899           the kernel or by users (see the attr(5) manual page, or visit
900           <http://acl.bestbits.at/> for details).
901
902           If unsure, say N.
903
904 config DEVPTS_FS_SECURITY
905         bool "/dev/pts Security Labels"
906         depends on DEVPTS_FS_XATTR
907         help
908           Security labels support alternative access control models
909           implemented by security modules like SELinux.  This option
910           enables an extended attribute handler for file security
911           labels in the /dev/pts filesystem.
912
913           If you are not using a security module that requires using
914           extended attributes for file security labels, say N.
915
916 config TMPFS
917         bool "Virtual memory file system support (former shm fs)"
918         help
919           Tmpfs is a file system which keeps all files in virtual memory.
920
921           Everything in tmpfs is temporary in the sense that no files will be
922           created on your hard drive. The files live in memory and swap
923           space. If you unmount a tmpfs instance, everything stored therein is
924           lost.
925
926           See <file:Documentation/filesystems/tmpfs.txt> for details.
927
928 config HUGETLBFS
929         bool "HugeTLB file system support"
930         depends X86 || IA64 || PPC64 || SPARC64 || SUPERH || X86_64 || BROKEN
931
932 config HUGETLB_PAGE
933         def_bool HUGETLBFS
934
935 config RAMFS
936         bool
937         default y
938         ---help---
939           Ramfs is a file system which keeps all files in RAM. It allows
940           read and write access.
941
942           It is more of an programming example than a useable file system.  If
943           you need a file system which lives in RAM with limit checking use
944           tmpfs.
945
946           To compile this as a module, choose M here: the module will be called
947           ramfs.
948
949 endmenu
950
951 menu "Miscellaneous filesystems"
952
953 config ADFS_FS
954         tristate "ADFS file system support (EXPERIMENTAL)"
955         depends on EXPERIMENTAL
956         help
957           The Acorn Disc Filing System is the standard file system of the
958           RiscOS operating system which runs on Acorn's ARM-based Risc PC
959           systems and the Acorn Archimedes range of machines. If you say Y
960           here, Linux will be able to read from ADFS partitions on hard drives
961           and from ADFS-formatted floppy discs. If you also want to be able to
962           write to those devices, say Y to "ADFS write support" below.
963
964           The ADFS partition should be the first partition (i.e.,
965           /dev/[hs]d?1) on each of your drives. Please read the file
966           <file:Documentation/filesystems/adfs.txt> for further details.
967
968           To compile this code as a module, choose M here: the module will be
969           called adfs.
970
971           If unsure, say N.
972
973 config ADFS_FS_RW
974         bool "ADFS write support (DANGEROUS)"
975         depends on ADFS_FS
976         help
977           If you say Y here, you will be able to write to ADFS partitions on
978           hard drives and ADFS-formatted floppy disks. This is experimental
979           codes, so if you're unsure, say N.
980
981 config AFFS_FS
982         tristate "Amiga FFS file system support (EXPERIMENTAL)"
983         depends on EXPERIMENTAL
984         help
985           The Fast File System (FFS) is the common file system used on hard
986           disks by Amiga(tm) systems since AmigaOS Version 1.3 (34.20).  Say Y
987           if you want to be able to read and write files from and to an Amiga
988           FFS partition on your hard drive.  Amiga floppies however cannot be
989           read with this driver due to an incompatibility of the floppy
990           controller used in an Amiga and the standard floppy controller in
991           PCs and workstations. Read <file:Documentation/filesystems/affs.txt>
992           and <file:fs/affs/Changes>.
993
994           With this driver you can also mount disk files used by Bernd
995           Schmidt's Un*X Amiga Emulator
996           (<http://www.freiburg.linux.de/~uae/>).
997           If you want to do this, you will also need to say Y or M to "Loop
998           device support", above.
999
1000           To compile this file system support as a module, choose M here: the
1001           module will be called affs.  If unsure, say N.
1002
1003 config HFS_FS
1004         tristate "Apple Macintosh file system support (EXPERIMENTAL)"
1005         depends on EXPERIMENTAL
1006         help
1007           If you say Y here, you will be able to mount Macintosh-formatted
1008           floppy disks and hard drive partitions with full read-write access.
1009           Please read <file:fs/hfs/HFS.txt> to learn about the available mount
1010           options.
1011
1012           To compile this file system support as a module, choose M here: the
1013           module will be called hfs.
1014
1015 config HFSPLUS_FS
1016         tristate "Apple Extended HFS file system support"
1017         select NLS
1018         help
1019           If you say Y here, you will be able to mount extended format
1020           Macintosh-formatted hard drive partitions with full read-write access.
1021
1022           This file system is often called HFS+ and was introduced with
1023           MacOS 8. It includes all Mac specific filesystem data such as
1024           data forks and creator codes, but it also has several UNIX
1025           style features such as file ownership and permissions.
1026
1027 config BEFS_FS
1028         tristate "BeOS file system (BeFS) support (read only) (EXPERIMENTAL)"
1029         depends on EXPERIMENTAL
1030         select NLS
1031         help
1032           The BeOS File System (BeFS) is the native file system of Be, Inc's
1033           BeOS. Notable features include support for arbitrary attributes
1034           on files and directories, and database-like indices on selected
1035           attributes. (Also note that this driver doesn't make those features
1036           available at this time). It is a 64 bit filesystem, so it supports
1037           extreemly large volumes and files.
1038
1039           If you use this filesystem, you should also say Y to at least one
1040           of the NLS (native language support) options below.
1041
1042           If you don't know what this is about, say N.
1043
1044           To compile this as a module, choose M here: the module will be
1045           called befs.
1046
1047 config BEFS_DEBUG
1048         bool "Debug BeFS"
1049         depends on BEFS_FS
1050         help
1051           If you say Y here, you can use the 'debug' mount option to enable
1052           debugging output from the driver. 
1053
1054 config BFS_FS
1055         tristate "BFS file system support (EXPERIMENTAL)"
1056         depends on EXPERIMENTAL
1057         help
1058           Boot File System (BFS) is a file system used under SCO UnixWare to
1059           allow the bootloader access to the kernel image and other important
1060           files during the boot process.  It is usually mounted under /stand
1061           and corresponds to the slice marked as "STAND" in the UnixWare
1062           partition.  You should say Y if you want to read or write the files
1063           on your /stand slice from within Linux.  You then also need to say Y
1064           to "UnixWare slices support", below.  More information about the BFS
1065           file system is contained in the file
1066           <file:Documentation/filesystems/bfs.txt>.
1067
1068           If you don't know what this is about, say N.
1069
1070           To compile this as a module, choose M here: the module will be called
1071           bfs.  Note that the file system of your root partition (the one
1072           containing the directory /) cannot be compiled as a module.
1073
1074
1075
1076 config EFS_FS
1077         tristate "EFS file system support (read only) (EXPERIMENTAL)"
1078         depends on EXPERIMENTAL
1079         help
1080           EFS is an older file system used for non-ISO9660 CD-ROMs and hard
1081           disk partitions by SGI's IRIX operating system (IRIX 6.0 and newer
1082           uses the XFS file system for hard disk partitions however).
1083
1084           This implementation only offers read-only access. If you don't know
1085           what all this is about, it's safe to say N. For more information
1086           about EFS see its home page at <http://aeschi.ch.eu.org/efs/>.
1087
1088           To compile the EFS file system support as a module, choose M here: the
1089           module will be called efs.
1090
1091 config JFFS_FS
1092         tristate "Journalling Flash File System (JFFS) support"
1093         depends on MTD
1094         help
1095           JFFS is the Journaling Flash File System developed by Axis
1096           Communications in Sweden, aimed at providing a crash/powerdown-safe
1097           file system for disk-less embedded devices. Further information is
1098           available at (<http://developer.axis.com/software/jffs/>).
1099
1100 config JFFS_FS_VERBOSE
1101         int "JFFS debugging verbosity (0 = quiet, 3 = noisy)"
1102         depends on JFFS_FS
1103         default "0"
1104         help
1105           Determines the verbosity level of the JFFS debugging messages.
1106
1107 config JFFS_PROC_FS
1108         bool "JFFS stats available in /proc filesystem"
1109         depends on JFFS_FS && PROC
1110         help
1111           Enabling this option will cause statistics from mounted JFFS file systems
1112           to be made available to the user in the /proc/fs/jffs/ directory.
1113
1114 config JFFS2_FS
1115         tristate "Journalling Flash File System v2 (JFFS2) support"
1116         depends on MTD
1117         select CRC32
1118         select ZLIB_INFLATE
1119         select ZLIB_DEFLATE
1120         help
1121           JFFS2 is the second generation of the Journalling Flash File System
1122           for use on diskless embedded devices. It provides improved wear
1123           levelling, compression and support for hard links. You cannot use
1124           this on normal block devices, only on 'MTD' devices.
1125
1126           Further information on the design and implementation of JFFS2 is
1127           available at <http://sources.redhat.com/jffs2/>.
1128
1129 config JFFS2_FS_DEBUG
1130         int "JFFS2 debugging verbosity (0 = quiet, 2 = noisy)"
1131         depends on JFFS2_FS
1132         default "0"
1133         help
1134           This controls the amount of debugging messages produced by the JFFS2
1135           code. Set it to zero for use in production systems. For evaluation,
1136           testing and debugging, it's advisable to set it to one. This will
1137           enable a few assertions and will print debugging messages at the
1138           KERN_DEBUG loglevel, where they won't normally be visible. Level 2
1139           is unlikely to be useful - it enables extra debugging in certain
1140           areas which at one point needed debugging, but when the bugs were
1141           located and fixed, the detailed messages were relegated to level 2.
1142
1143           If reporting bugs, please try to have available a full dump of the
1144           messages at debug level 1 while the misbehaviour was occurring.
1145
1146 config JFFS2_FS_NAND
1147         bool "JFFS2 support for NAND flash (EXPERIMENTAL)"
1148         depends on JFFS2_FS && EXPERIMENTAL
1149         default n
1150         help
1151           This enables the experimental support for NAND flash in JFFS2. NAND
1152           is a newer type of flash chip design than the traditional NOR flash,
1153           with higher density but a handful of characteristics which make it
1154           more interesting for the file system to use. Support for NAND flash
1155           is not yet complete and may corrupt data. For further information,
1156           including a link to the mailing list where details of the remaining
1157           work to be completed for NAND flash support can be found, see the 
1158           JFFS2 web site at <http://sources.redhat.com/jffs2>.
1159
1160           Say 'N' unless you have NAND flash and you are willing to test and
1161           develop JFFS2 support for it.
1162
1163 config CRAMFS
1164         tristate "Compressed ROM file system support"
1165         select ZLIB_INFLATE
1166         help
1167           Saying Y here includes support for CramFs (Compressed ROM File
1168           System).  CramFs is designed to be a simple, small, and compressed
1169           file system for ROM based embedded systems.  CramFs is read-only,
1170           limited to 256MB file systems (with 16MB files), and doesn't support
1171           16/32 bits uid/gid, hard links and timestamps.
1172
1173           See <file:Documentation/filesystems/cramfs.txt> and
1174           <file:fs/cramfs/README> for further information.
1175
1176           To compile this as a module, choose M here: the module will be called
1177           cramfs.  Note that the root file system (the one containing the
1178           directory /) cannot be compiled as a module.
1179
1180           If unsure, say N.
1181
1182 config VXFS_FS
1183         tristate "FreeVxFS file system support (VERITAS VxFS(TM) compatible)"
1184         help
1185           FreeVxFS is a file system driver that support the VERITAS VxFS(TM)
1186           file system format.  VERITAS VxFS(TM) is the standard file system
1187           of SCO UnixWare (and possibly others) and optionally available
1188           for Sunsoft Solaris, HP-UX and many other operating systems.
1189           Currently only readonly access is supported.
1190
1191           NOTE: the file system type as used by mount(1), mount(2) and
1192           fstab(5) is 'vxfs' as it describes the file system format, not
1193           the actual driver.
1194
1195           To compile this as a module, choose M here: the module will be
1196           called freevxfs.  If unsure, say N.
1197
1198
1199 config HPFS_FS
1200         tristate "OS/2 HPFS file system support"
1201         help
1202           OS/2 is IBM's operating system for PC's, the same as Warp, and HPFS
1203           is the file system used for organizing files on OS/2 hard disk
1204           partitions. Say Y if you want to be able to read files from and
1205           write files to an OS/2 HPFS partition on your hard drive. OS/2
1206           floppies however are in regular MSDOS format, so you don't need this
1207           option in order to be able to read them. Read
1208           <file:Documentation/filesystems/hpfs.txt>.
1209
1210           To compile this file system support as a module, choose M here: the
1211           module will be called hpfs.  If unsure, say N.
1212
1213
1214
1215 config QNX4FS_FS
1216         tristate "QNX4 file system support (read only)"
1217         help
1218           This is the file system used by the real-time operating systems
1219           QNX 4 and QNX 6 (the latter is also called QNX RTP).
1220           Further information is available at <http://www.qnx.com/>.
1221           Say Y if you intend to mount QNX hard disks or floppies.
1222           Unless you say Y to "QNX4FS read-write support" below, you will
1223           only be able to read these file systems.
1224
1225           To compile this file system support as a module, choose M here: the
1226           module will be called qnx4.
1227
1228           If you don't know whether you need it, then you don't need it:
1229           answer N.
1230
1231 config QNX4FS_RW
1232         bool "QNX4FS write support (DANGEROUS)"
1233         depends on QNX4FS_FS && EXPERIMENTAL
1234         help
1235           Say Y if you want to test write support for QNX4 file systems.
1236
1237           It's currently broken, so for now:
1238           answer N.
1239
1240
1241
1242 config SYSV_FS
1243         tristate "System V/Xenix/V7/Coherent file system support"
1244         help
1245           SCO, Xenix and Coherent are commercial Unix systems for Intel
1246           machines, and Version 7 was used on the DEC PDP-11. Saying Y
1247           here would allow you to read from their floppies and hard disk
1248           partitions.
1249
1250           If you have floppies or hard disk partitions like that, it is likely
1251           that they contain binaries from those other Unix systems; in order
1252           to run these binaries, you will want to install linux-abi which is a
1253           a set of kernel modules that lets you run SCO, Xenix, Wyse,
1254           UnixWare, Dell Unix and System V programs under Linux.  It is
1255           available via FTP (user: ftp) from
1256           <ftp://ftp.openlinux.org/pub/people/hch/linux-abi/>).
1257           NOTE: that will work only for binaries from Intel-based systems;
1258           PDP ones will have to wait until somebody ports Linux to -11 ;-)
1259
1260           If you only intend to mount files from some other Unix over the
1261           network using NFS, you don't need the System V file system support
1262           (but you need NFS file system support obviously).
1263
1264           Note that this option is generally not needed for floppies, since a
1265           good portable way to transport files and directories between unixes
1266           (and even other operating systems) is given by the tar program ("man
1267           tar" or preferably "info tar").  Note also that this option has
1268           nothing whatsoever to do with the option "System V IPC". Read about
1269           the System V file system in
1270           <file:Documentation/filesystems/sysv-fs.txt>.
1271           Saying Y here will enlarge your kernel by about 27 KB.
1272
1273           To compile this as a module, choose M here: the module will be called
1274           sysv.
1275
1276           If you haven't heard about all of this before, it's safe to say N.
1277
1278
1279
1280 config UFS_FS
1281         tristate "UFS file system support (read only)"
1282         help
1283           BSD and derivate versions of Unix (such as SunOS, FreeBSD, NetBSD,
1284           OpenBSD and NeXTstep) use a file system called UFS. Some System V
1285           Unixes can create and mount hard disk partitions and diskettes using
1286           this file system as well. Saying Y here will allow you to read from
1287           these partitions; if you also want to write to them, say Y to the
1288           experimental "UFS file system write support", below. Please read the
1289           file <file:Documentation/filesystems/ufs.txt> for more information.
1290
1291           The recently released UFS2 variant (used in FreeBSD 5.x) is
1292           READ-ONLY supported.
1293
1294           If you only intend to mount files from some other Unix over the
1295           network using NFS, you don't need the UFS file system support (but
1296           you need NFS file system support obviously).
1297
1298           Note that this option is generally not needed for floppies, since a
1299           good portable way to transport files and directories between unixes
1300           (and even other operating systems) is given by the tar program ("man
1301           tar" or preferably "info tar").
1302
1303           When accessing NeXTstep files, you may need to convert them from the
1304           NeXT character set to the Latin1 character set; use the program
1305           recode ("info recode") for this purpose.
1306
1307           To compile the UFS file system support as a module, choose M here: the
1308           module will be called ufs.
1309
1310           If you haven't heard about all of this before, it's safe to say N.
1311
1312 config UFS_FS_WRITE
1313         bool "UFS file system write support (DANGEROUS)"
1314         depends on UFS_FS && EXPERIMENTAL
1315         help
1316           Say Y here if you want to try writing to UFS partitions. This is
1317           experimental, so you should back up your UFS partitions beforehand.
1318
1319 endmenu
1320
1321 menu "Network File Systems"
1322         depends on NET
1323
1324 config NFS_FS
1325         tristate "NFS file system support"
1326         depends on INET
1327         select LOCKD
1328         select SUNRPC
1329         help
1330           If you are connected to some other (usually local) Unix computer
1331           (using SLIP, PLIP, PPP or Ethernet) and want to mount files residing
1332           on that computer (the NFS server) using the Network File Sharing
1333           protocol, say Y. "Mounting files" means that the client can access
1334           the files with usual UNIX commands as if they were sitting on the
1335           client's hard disk. For this to work, the server must run the
1336           programs nfsd and mountd (but does not need to have NFS file system
1337           support enabled in its kernel). NFS is explained in the Network
1338           Administrator's Guide, available from
1339           <http://www.tldp.org/docs.html#guide>, on its man page: "man
1340           nfs", and in the NFS-HOWTO.
1341
1342           A superior but less widely used alternative to NFS is provided by
1343           the Coda file system; see "Coda file system support" below.
1344
1345           If you say Y here, you should have said Y to TCP/IP networking also.
1346           This option would enlarge your kernel by about 27 KB.
1347
1348           To compile this file system support as a module, choose M here: the
1349           module will be called nfs.
1350
1351           If you are configuring a diskless machine which will mount its root
1352           file system over NFS at boot time, say Y here and to "Kernel
1353           level IP autoconfiguration" above and to "Root file system on NFS"
1354           below. You cannot compile this driver as a module in this case.
1355           There are two packages designed for booting diskless machines over
1356           the net: netboot, available from
1357           <http://ftp1.sourceforge.net/netboot/>, and Etherboot,
1358           available from <http://ftp1.sourceforge.net/etherboot/>.
1359
1360           If you don't know what all this is about, say N.
1361
1362 config NFS_V3
1363         bool "Provide NFSv3 client support"
1364         depends on NFS_FS
1365         help
1366           Say Y here if you want your NFS client to be able to speak the newer
1367           version 3 of the NFS protocol.
1368
1369           If unsure, say Y.
1370
1371 config NFS_V4
1372         bool "Provide NFSv4 client support (EXPERIMENTAL)"
1373         depends on NFS_FS && EXPERIMENTAL
1374         select RPCSEC_GSS_KRB5
1375         help
1376           Say Y here if you want your NFS client to be able to speak the newer
1377           version 4 of the NFS protocol.
1378
1379           Note: Requires auxiliary userspace daemons which may be found on
1380                 http://www.citi.umich.edu/projects/nfsv4/
1381
1382           If unsure, say N.
1383
1384 config NFS_DIRECTIO
1385         bool "Allow direct I/O on NFS files (EXPERIMENTAL)"
1386         depends on NFS_FS && EXPERIMENTAL
1387         help
1388           This option enables applications to perform uncached I/O on files
1389           in NFS file systems using the O_DIRECT open() flag.  When O_DIRECT
1390           is set for a file, its data is not cached in the system's page
1391           cache.  Data is moved to and from user-level application buffers
1392           directly.  Unlike local disk-based file systems, NFS O_DIRECT has
1393           no alignment restrictions.
1394
1395           Unless your program is designed to use O_DIRECT properly, you are
1396           much better off allowing the NFS client to manage data caching for
1397           you.  Misusing O_DIRECT can cause poor server performance or network
1398           storms.  This kernel build option defaults OFF to avoid exposing
1399           system administrators unwittingly to a potentially hazardous
1400           feature.
1401
1402           For more details on NFS O_DIRECT, see fs/nfs/direct.c.
1403
1404           If unsure, say N.  This reduces the size of the NFS client, and
1405           causes open() to return EINVAL if a file residing in NFS is
1406           opened with the O_DIRECT flag.
1407
1408 config NFSD
1409         tristate "NFS server support"
1410         depends on INET
1411         select LOCKD
1412         select SUNRPC
1413         help
1414           If you want your Linux box to act as an NFS *server*, so that other
1415           computers on your local network which support NFS can access certain
1416           directories on your box transparently, you have two options: you can
1417           use the self-contained user space program nfsd, in which case you
1418           should say N here, or you can say Y and use the kernel based NFS
1419           server. The advantage of the kernel based solution is that it is
1420           faster.
1421
1422           In either case, you will need support software; the respective
1423           locations are given in the file <file:Documentation/Changes> in the
1424           NFS section.
1425
1426           If you say Y here, you will get support for version 2 of the NFS
1427           protocol (NFSv2). If you also want NFSv3, say Y to the next question
1428           as well.
1429
1430           Please read the NFS-HOWTO, available from
1431           <http://www.tldp.org/docs.html#howto>.
1432
1433           To compile the NFS server support as a module, choose M here: the
1434           module will be called nfsd.  If unsure, say N.
1435
1436 config NFSD_V3
1437         bool "Provide NFSv3 server support"
1438         depends on NFSD
1439         help
1440           If you would like to include the NFSv3 server as well as the NFSv2
1441           server, say Y here.  If unsure, say Y.
1442
1443 config NFSD_V4
1444         bool "Provide NFSv4 server support (EXPERIMENTAL)"
1445         depends on NFSD_V3 && EXPERIMENTAL
1446         help
1447           If you would like to include the NFSv4 server as well as the NFSv2
1448           and NFSv3 servers, say Y here.  This feature is experimental, and
1449           should only be used if you are interested in helping to test NFSv4.
1450           If unsure, say N.
1451
1452 config NFSD_TCP
1453         bool "Provide NFS server over TCP support (EXPERIMENTAL)"
1454         depends on NFSD && EXPERIMENTAL
1455         help
1456           Enable NFS service over TCP connections.  This the officially
1457           still experimental, but seems to work well.
1458
1459 config ROOT_NFS
1460         bool "Root file system on NFS"
1461         depends on NFS_FS=y && IP_PNP
1462         help
1463           If you want your Linux box to mount its whole root file system (the
1464           one containing the directory /) from some other computer over the
1465           net via NFS (presumably because your box doesn't have a hard disk),
1466           say Y. Read <file:Documentation/nfsroot.txt> for details. It is
1467           likely that in this case, you also want to say Y to "Kernel level IP
1468           autoconfiguration" so that your box can discover its network address
1469           at boot time.
1470
1471           Most people say N here.
1472
1473 config LOCKD
1474         tristate
1475
1476 config LOCKD_V4
1477         bool
1478         depends on NFSD_V3 || NFS_V3
1479         default y
1480
1481 config EXPORTFS
1482         tristate
1483         default NFSD
1484
1485 config SUNRPC
1486         tristate
1487
1488 config SUNRPC_GSS
1489         tristate
1490
1491 config RPCSEC_GSS_KRB5
1492         tristate "Secure RPC: Kerberos V mechanism (EXPERIMENTAL)"
1493         depends on SUNRPC && EXPERIMENTAL
1494         select SUNRPC_GSS
1495         select CRYPTO
1496         select CRYPTO_MD5
1497         select CRYPTO_DES
1498         help
1499           Provides for secure RPC calls by means of a gss-api
1500           mechanism based on Kerberos V5. This is required for
1501           NFSv4.
1502
1503           Note: Requires an auxiliary userspace daemon which may be found on
1504                 http://www.citi.umich.edu/projects/nfsv4/
1505
1506           If unsure, say N.
1507
1508 config SMB_FS
1509         tristate "SMB file system support (to mount Windows shares etc.)"
1510         depends on INET
1511         select NLS
1512         help
1513           SMB (Server Message Block) is the protocol Windows for Workgroups
1514           (WfW), Windows 95/98, Windows NT and OS/2 Lan Manager use to share
1515           files and printers over local networks.  Saying Y here allows you to
1516           mount their file systems (often called "shares" in this context) and
1517           access them just like any other Unix directory.  Currently, this
1518           works only if the Windows machines use TCP/IP as the underlying
1519           transport protocol, and not NetBEUI.  For details, read
1520           <file:Documentation/filesystems/smbfs.txt> and the SMB-HOWTO,
1521           available from <http://www.tldp.org/docs.html#howto>.
1522
1523           Note: if you just want your box to act as an SMB *server* and make
1524           files and printing services available to Windows clients (which need
1525           to have a TCP/IP stack), you don't need to say Y here; you can use
1526           the program SAMBA (available from <ftp://ftp.samba.org/pub/samba/>)
1527           for that.
1528
1529           General information about how to connect Linux, Windows machines and
1530           Macs is on the WWW at <http://www.eats.com/linux_mac_win.html>.
1531
1532           To compile the SMB support as a module, choose M here: the module will
1533           be called smbfs.  Most people say N, however.
1534
1535 config SMB_NLS_DEFAULT
1536         bool "Use a default NLS"
1537         depends on SMB_FS
1538         help
1539           Enabling this will make smbfs use nls translations by default. You
1540           need to specify the local charset (CONFIG_NLS_DEFAULT) in the nls
1541           settings and you need to give the default nls for the SMB server as
1542           CONFIG_SMB_NLS_REMOTE.
1543
1544           The nls settings can be changed at mount time, if your smbmount
1545           supports that, using the codepage and iocharset parameters.
1546
1547           smbmount from samba 2.2.0 or later supports this.
1548
1549 config SMB_NLS_REMOTE
1550         string "Default Remote NLS Option"
1551         depends on SMB_NLS_DEFAULT
1552         default "cp437"
1553         help
1554           This setting allows you to specify a default value for which
1555           codepage the server uses. If this field is left blank no
1556           translations will be done by default. The local codepage/charset
1557           default to CONFIG_NLS_DEFAULT.
1558
1559           The nls settings can be changed at mount time, if your smbmount
1560           supports that, using the codepage and iocharset parameters.
1561
1562           smbmount from samba 2.2.0 or later supports this.
1563
1564 config CIFS
1565         tristate "CIFS support (advanced network filesystem for Samba, Window and other CIFS compliant servers)(EXPERIMENTAL)"
1566         depends on INET
1567         select NLS
1568         help
1569           This is the client VFS module for the Common Internet File System
1570           (CIFS) protocol which is the successor to the Server Message Block 
1571           (SMB) protocol, the native file sharing mechanism for most early
1572           PC operating systems.  The CIFS protocol is fully supported by 
1573           file servers such as Windows 2000 (including Windows 2003, NT 4  
1574           and Windows XP) as well by Samba (which provides excellent CIFS
1575           server support for Linux and many other operating systems). Currently
1576           you must use the smbfs client filesystem to access older SMB servers
1577           such as Windows 9x and OS/2.
1578
1579           The intent of the cifs module is to provide an advanced
1580           network file system client for mounting to CIFS compliant servers, 
1581           including support for dfs (hierarchical name space), secure per-user
1582           session establishment, safe distributed caching (oplock), optional
1583           packet signing, Unicode and other internationalization improvements, 
1584           and optional Winbind (nsswitch) integration. You do not need to enable
1585           cifs if running only a (Samba) server. It is possible to enable both
1586           smbfs and cifs (e.g. if you are using CIFS for accessing Windows 2003
1587           and Samba 3 servers, and smbfs for accessing old servers). If you need 
1588           to mount to Samba or Windows 2003 servers from this machine, say Y.
1589
1590 config CIFS_STATS
1591         bool "CIFS statistics"
1592         depends on CIFS
1593         help
1594           Enabling this option will cause statistics for each server share
1595           mounted by the cifs client to be displayed in /proc/fs/cifs/DebugData
1596
1597 config NCP_FS
1598         tristate "NCP file system support (to mount NetWare volumes)"
1599         depends on IPX!=n || INET
1600         help
1601           NCP (NetWare Core Protocol) is a protocol that runs over IPX and is
1602           used by Novell NetWare clients to talk to file servers.  It is to
1603           IPX what NFS is to TCP/IP, if that helps.  Saying Y here allows you
1604           to mount NetWare file server volumes and to access them just like
1605           any other Unix directory.  For details, please read the file
1606           <file:Documentation/filesystems/ncpfs.txt> in the kernel source and
1607           the IPX-HOWTO from <http://www.tldp.org/docs.html#howto>.
1608
1609           You do not have to say Y here if you want your Linux box to act as a
1610           file *server* for Novell NetWare clients.
1611
1612           General information about how to connect Linux, Windows machines and
1613           Macs is on the WWW at <http://www.eats.com/linux_mac_win.html>.
1614
1615           To compile this as a module, choose M here: the module will be called
1616           ncpfs.  Say N unless you are connected to a Novell network.
1617
1618 source "fs/ncpfs/Kconfig"
1619
1620 config CODA_FS
1621         tristate "Coda file system support (advanced network fs)"
1622         depends on INET
1623         help
1624           Coda is an advanced network file system, similar to NFS in that it
1625           enables you to mount file systems of a remote server and access them
1626           with regular Unix commands as if they were sitting on your hard
1627           disk.  Coda has several advantages over NFS: support for
1628           disconnected operation (e.g. for laptops), read/write server
1629           replication, security model for authentication and encryption,
1630           persistent client caches and write back caching.
1631
1632           If you say Y here, your Linux box will be able to act as a Coda
1633           *client*.  You will need user level code as well, both for the
1634           client and server.  Servers are currently user level, i.e. they need
1635           no kernel support.  Please read
1636           <file:Documentation/filesystems/coda.txt> and check out the Coda
1637           home page <http://www.coda.cs.cmu.edu/>.
1638
1639           To compile the coda client support as a module, choose M here: the
1640           module will be called coda.
1641
1642 config CODA_FS_OLD_API
1643         bool "Use 96-bit Coda file identifiers"
1644         depends on CODA_FS
1645         help
1646           A new kernel-userspace API had to be introduced for Coda v6.0
1647           to support larger 128-bit file identifiers as needed by the
1648           new realms implementation.
1649
1650           However this new API is not backward compatible with older
1651           clients. If you really need to run the old Coda userspace
1652           cache manager then say Y.
1653           
1654           For most cases you probably want to say N.
1655
1656 config AFS_FS
1657 # for fs/nls/Config.in
1658         tristate "Andrew File System support (AFS) (Experimental)"
1659         depends on INET && EXPERIMENTAL
1660         select RXRPC
1661         help
1662           If you say Y here, you will get an experimental Andrew File System
1663           driver. It currently only supports unsecured read-only AFS access.
1664
1665           See Documentation/filesystems/afs.txt for more intormation.
1666
1667           If unsure, say N.
1668
1669 config RXRPC
1670         tristate
1671
1672 endmenu
1673
1674 menu "Partition Types"
1675
1676 source "fs/partitions/Kconfig"
1677
1678 endmenu
1679
1680 source "fs/nls/Kconfig"
1681
1682 endmenu
1683