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