Merge to Fedora kernel-2.6.7-1.494 and VServer 1.9.1.12. Fix some previous merge...
[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 (EXPERIMENTAL)"
1187         depends on JFFS2_FS && EXPERIMENTAL
1188         default n
1189         help
1190           This enables the experimental support for NAND flash in JFFS2. NAND
1191           is a newer type of flash chip design than the traditional NOR flash,
1192           with higher density but a handful of characteristics which make it
1193           more interesting for the file system to use. Support for NAND flash
1194           is not yet complete and may corrupt data. For further information,
1195           including a link to the mailing list where details of the remaining
1196           work to be completed for NAND flash support can be found, see the 
1197           JFFS2 web site at <http://sources.redhat.com/jffs2>.
1198
1199           Say 'N' unless you have NAND flash and you are willing to test and
1200           develop JFFS2 support for it.
1201
1202 config JFFS2_COMPRESSION_OPTIONS
1203         bool "Advanced compression options for JFFS2"
1204         default n
1205         help
1206           Enabling this option allows you to explicitly choose which
1207           compression modules, if any, are enabled in JFFS2. Removing
1208           compressors and mean you cannot read existing file systems,
1209           and enabling experimental compressors can mean that you
1210           write a file system which cannot be read by a standard kernel.
1211
1212           If unsure, you should _definitely_ say 'N'.
1213
1214 config JFFS2_ZLIB
1215         bool "JFFS2 ZLIB compression support" if JFFS2_COMPRESSION_OPTIONS
1216         select ZLIB_INFLATE
1217         select ZLIB_DEFLATE
1218         depends on JFFS2_FS
1219         default y
1220         help
1221           Zlib is designed to be a free, general-purpose, legally unencumbered,
1222           lossless data-compression library for use on virtually any computer 
1223           hardware and operating system. See http://www.gzip.org/zlib/ for
1224           further information.
1225           
1226           Say 'Y' if unsure.
1227
1228 config JFFS2_RTIME
1229         bool "JFFS2 RTIME compression support" if JFFS2_COMPRESSION_OPTIONS
1230         depends on JFFS2_FS
1231         default y
1232         help
1233           Rtime does manage to recompress already-compressed data. Say 'Y' if unsure.
1234
1235 config JFFS2_RUBIN
1236         bool "JFFS2 RUBIN compression support" if JFFS2_COMPRESSION_OPTIONS
1237         depends on JFFS2_FS
1238         default n
1239         help
1240           RUBINMIPS and DYNRUBIN compressors. Say 'N' if unsure.
1241
1242 choice
1243         prompt "JFFS2 default compression mode" if JFFS2_COMPRESSION_OPTIONS
1244         default JFFS2_CMODE_PRIORITY
1245         depends on JFFS2_FS
1246         help
1247           You can set here the default compression mode of JFFS2 from 
1248           the avaiable compression modes. Don't touch if unsure.
1249
1250 config JFFS2_CMODE_NONE
1251         bool "no compression"
1252         help
1253           Uses no compression.
1254
1255 config JFFS2_CMODE_PRIORITY
1256         bool "priority"
1257         help
1258           Tries the compressors in a predefinied order and chooses the first 
1259           successful one.
1260
1261 config JFFS2_CMODE_SIZE
1262         bool "size (EXPERIMENTAL)"
1263         help
1264           Tries all compressors and chooses the one which has the smallest 
1265           result.
1266
1267 endchoice
1268
1269 config JFFS2_PROC
1270         bool "JFFS2 proc interface support" if JFFS2_COMPRESSION_OPTIONS
1271         depends on JFFS2_FS && PROC_FS
1272         default n
1273         help
1274           You can read some statistics and set the compression mode and
1275           compressor priorities with this interface.
1276
1277
1278 config CRAMFS
1279         tristate "Compressed ROM file system support"
1280         select ZLIB_INFLATE
1281         help
1282           Saying Y here includes support for CramFs (Compressed ROM File
1283           System).  CramFs is designed to be a simple, small, and compressed
1284           file system for ROM based embedded systems.  CramFs is read-only,
1285           limited to 256MB file systems (with 16MB files), and doesn't support
1286           16/32 bits uid/gid, hard links and timestamps.
1287
1288           See <file:Documentation/filesystems/cramfs.txt> and
1289           <file:fs/cramfs/README> for further information.
1290
1291           To compile this as a module, choose M here: the module will be called
1292           cramfs.  Note that the root file system (the one containing the
1293           directory /) cannot be compiled as a module.
1294
1295           If unsure, say N.
1296
1297 config VXFS_FS
1298         tristate "FreeVxFS file system support (VERITAS VxFS(TM) compatible)"
1299         help
1300           FreeVxFS is a file system driver that support the VERITAS VxFS(TM)
1301           file system format.  VERITAS VxFS(TM) is the standard file system
1302           of SCO UnixWare (and possibly others) and optionally available
1303           for Sunsoft Solaris, HP-UX and many other operating systems.
1304           Currently only readonly access is supported.
1305
1306           NOTE: the file system type as used by mount(1), mount(2) and
1307           fstab(5) is 'vxfs' as it describes the file system format, not
1308           the actual driver.
1309
1310           To compile this as a module, choose M here: the module will be
1311           called freevxfs.  If unsure, say N.
1312
1313
1314 config HPFS_FS
1315         tristate "OS/2 HPFS file system support"
1316         help
1317           OS/2 is IBM's operating system for PC's, the same as Warp, and HPFS
1318           is the file system used for organizing files on OS/2 hard disk
1319           partitions. Say Y if you want to be able to read files from and
1320           write files to an OS/2 HPFS partition on your hard drive. OS/2
1321           floppies however are in regular MSDOS format, so you don't need this
1322           option in order to be able to read them. Read
1323           <file:Documentation/filesystems/hpfs.txt>.
1324
1325           To compile this file system support as a module, choose M here: the
1326           module will be called hpfs.  If unsure, say N.
1327
1328 config QNX4FS_FS
1329         tristate "QNX4 file system support (read only)"
1330         help
1331           This is the file system used by the real-time operating systems
1332           QNX 4 and QNX 6 (the latter is also called QNX RTP).
1333           Further information is available at <http://www.qnx.com/>.
1334           Say Y if you intend to mount QNX hard disks or floppies.
1335           Unless you say Y to "QNX4FS read-write support" below, you will
1336           only be able to read these file systems.
1337
1338           To compile this file system support as a module, choose M here: the
1339           module will be called qnx4.
1340
1341           If you don't know whether you need it, then you don't need it:
1342           answer N.
1343
1344 config QNX4FS_RW
1345         bool "QNX4FS write support (DANGEROUS)"
1346         depends on QNX4FS_FS && EXPERIMENTAL
1347         help
1348           Say Y if you want to test write support for QNX4 file systems.
1349
1350           It's currently broken, so for now:
1351           answer N.
1352
1353 config SYSV_FS
1354         tristate "System V/Xenix/V7/Coherent file system support"
1355         help
1356           SCO, Xenix and Coherent are commercial Unix systems for Intel
1357           machines, and Version 7 was used on the DEC PDP-11. Saying Y
1358           here would allow you to read from their floppies and hard disk
1359           partitions.
1360
1361           If you have floppies or hard disk partitions like that, it is likely
1362           that they contain binaries from those other Unix systems; in order
1363           to run these binaries, you will want to install linux-abi which is a
1364           a set of kernel modules that lets you run SCO, Xenix, Wyse,
1365           UnixWare, Dell Unix and System V programs under Linux.  It is
1366           available via FTP (user: ftp) from
1367           <ftp://ftp.openlinux.org/pub/people/hch/linux-abi/>).
1368           NOTE: that will work only for binaries from Intel-based systems;
1369           PDP ones will have to wait until somebody ports Linux to -11 ;-)
1370
1371           If you only intend to mount files from some other Unix over the
1372           network using NFS, you don't need the System V file system support
1373           (but you need NFS file system support obviously).
1374
1375           Note that this option is generally not needed for floppies, since a
1376           good portable way to transport files and directories between unixes
1377           (and even other operating systems) is given by the tar program ("man
1378           tar" or preferably "info tar").  Note also that this option has
1379           nothing whatsoever to do with the option "System V IPC". Read about
1380           the System V file system in
1381           <file:Documentation/filesystems/sysv-fs.txt>.
1382           Saying Y here will enlarge your kernel by about 27 KB.
1383
1384           To compile this as a module, choose M here: the module will be called
1385           sysv.
1386
1387           If you haven't heard about all of this before, it's safe to say N.
1388
1389 config UFS_FS
1390         tristate "UFS file system support (read only)"
1391         help
1392           BSD and derivate versions of Unix (such as SunOS, FreeBSD, NetBSD,
1393           OpenBSD and NeXTstep) use a file system called UFS. Some System V
1394           Unixes can create and mount hard disk partitions and diskettes using
1395           this file system as well. Saying Y here will allow you to read from
1396           these partitions; if you also want to write to them, say Y to the
1397           experimental "UFS file system write support", below. Please read the
1398           file <file:Documentation/filesystems/ufs.txt> for more information.
1399
1400           The recently released UFS2 variant (used in FreeBSD 5.x) is
1401           READ-ONLY supported.
1402
1403           If you only intend to mount files from some other Unix over the
1404           network using NFS, you don't need the UFS file system support (but
1405           you need NFS file system support obviously).
1406
1407           Note that this option is generally not needed for floppies, since a
1408           good portable way to transport files and directories between unixes
1409           (and even other operating systems) is given by the tar program ("man
1410           tar" or preferably "info tar").
1411
1412           When accessing NeXTstep files, you may need to convert them from the
1413           NeXT character set to the Latin1 character set; use the program
1414           recode ("info recode") for this purpose.
1415
1416           To compile the UFS file system support as a module, choose M here: the
1417           module will be called ufs.
1418
1419           If you haven't heard about all of this before, it's safe to say N.
1420
1421 config UFS_FS_WRITE
1422         bool "UFS file system write support (DANGEROUS)"
1423         depends on UFS_FS && EXPERIMENTAL
1424         help
1425           Say Y here if you want to try writing to UFS partitions. This is
1426           experimental, so you should back up your UFS partitions beforehand.
1427
1428 endmenu
1429
1430 menu "Network File Systems"
1431         depends on NET
1432
1433 config NFS_FS
1434         tristate "NFS file system support"
1435         depends on INET
1436         select LOCKD
1437         select SUNRPC
1438         help
1439           If you are connected to some other (usually local) Unix computer
1440           (using SLIP, PLIP, PPP or Ethernet) and want to mount files residing
1441           on that computer (the NFS server) using the Network File Sharing
1442           protocol, say Y. "Mounting files" means that the client can access
1443           the files with usual UNIX commands as if they were sitting on the
1444           client's hard disk. For this to work, the server must run the
1445           programs nfsd and mountd (but does not need to have NFS file system
1446           support enabled in its kernel). NFS is explained in the Network
1447           Administrator's Guide, available from
1448           <http://www.tldp.org/docs.html#guide>, on its man page: "man
1449           nfs", and in the NFS-HOWTO.
1450
1451           A superior but less widely used alternative to NFS is provided by
1452           the Coda file system; see "Coda file system support" below.
1453
1454           If you say Y here, you should have said Y to TCP/IP networking also.
1455           This option would enlarge your kernel by about 27 KB.
1456
1457           To compile this file system support as a module, choose M here: the
1458           module will be called nfs.
1459
1460           If you are configuring a diskless machine which will mount its root
1461           file system over NFS at boot time, say Y here and to "Kernel
1462           level IP autoconfiguration" above and to "Root file system on NFS"
1463           below. You cannot compile this driver as a module in this case.
1464           There are two packages designed for booting diskless machines over
1465           the net: netboot, available from
1466           <http://ftp1.sourceforge.net/netboot/>, and Etherboot,
1467           available from <http://ftp1.sourceforge.net/etherboot/>.
1468
1469           If you don't know what all this is about, say N.
1470
1471 config NFS_V3
1472         bool "Provide NFSv3 client support"
1473         depends on NFS_FS
1474         help
1475           Say Y here if you want your NFS client to be able to speak the newer
1476           version 3 of the NFS protocol.
1477
1478           If unsure, say Y.
1479
1480 config NFS_V4
1481         bool "Provide NFSv4 client support (EXPERIMENTAL)"
1482         depends on NFS_FS && EXPERIMENTAL
1483         select RPCSEC_GSS_KRB5
1484         help
1485           Say Y here if you want your NFS client to be able to speak the newer
1486           version 4 of the NFS protocol.
1487
1488           Note: Requires auxiliary userspace daemons which may be found on
1489                 http://www.citi.umich.edu/projects/nfsv4/
1490
1491           If unsure, say N.
1492
1493 config NFS_DIRECTIO
1494         bool "Allow direct I/O on NFS files (EXPERIMENTAL)"
1495         depends on NFS_FS && EXPERIMENTAL
1496         help
1497           This option enables applications to perform uncached I/O on files
1498           in NFS file systems using the O_DIRECT open() flag.  When O_DIRECT
1499           is set for a file, its data is not cached in the system's page
1500           cache.  Data is moved to and from user-level application buffers
1501           directly.  Unlike local disk-based file systems, NFS O_DIRECT has
1502           no alignment restrictions.
1503
1504           Unless your program is designed to use O_DIRECT properly, you are
1505           much better off allowing the NFS client to manage data caching for
1506           you.  Misusing O_DIRECT can cause poor server performance or network
1507           storms.  This kernel build option defaults OFF to avoid exposing
1508           system administrators unwittingly to a potentially hazardous
1509           feature.
1510
1511           For more details on NFS O_DIRECT, see fs/nfs/direct.c.
1512
1513           If unsure, say N.  This reduces the size of the NFS client, and
1514           causes open() to return EINVAL if a file residing in NFS is
1515           opened with the O_DIRECT flag.
1516
1517 config NFSD
1518         tristate "NFS server support"
1519         depends on INET
1520         select LOCKD
1521         select SUNRPC
1522         help
1523           If you want your Linux box to act as an NFS *server*, so that other
1524           computers on your local network which support NFS can access certain
1525           directories on your box transparently, you have two options: you can
1526           use the self-contained user space program nfsd, in which case you
1527           should say N here, or you can say Y and use the kernel based NFS
1528           server. The advantage of the kernel based solution is that it is
1529           faster.
1530
1531           In either case, you will need support software; the respective
1532           locations are given in the file <file:Documentation/Changes> in the
1533           NFS section.
1534
1535           If you say Y here, you will get support for version 2 of the NFS
1536           protocol (NFSv2). If you also want NFSv3, say Y to the next question
1537           as well.
1538
1539           Please read the NFS-HOWTO, available from
1540           <http://www.tldp.org/docs.html#howto>.
1541
1542           To compile the NFS server support as a module, choose M here: the
1543           module will be called nfsd.  If unsure, say N.
1544
1545 config NFSD_V3
1546         bool "Provide NFSv3 server support"
1547         depends on NFSD
1548         help
1549           If you would like to include the NFSv3 server as well as the NFSv2
1550           server, say Y here.  If unsure, say Y.
1551
1552 config NFSD_V4
1553         bool "Provide NFSv4 server support (EXPERIMENTAL)"
1554         depends on NFSD_V3 && EXPERIMENTAL
1555         help
1556           If you would like to include the NFSv4 server as well as the NFSv2
1557           and NFSv3 servers, say Y here.  This feature is experimental, and
1558           should only be used if you are interested in helping to test NFSv4.
1559           If unsure, say N.
1560
1561 config NFSD_TCP
1562         bool "Provide NFS server over TCP support"
1563         depends on NFSD
1564         default y
1565         help
1566           If you want your NFS server to support TCP connections, say Y here.
1567           TCP connections usually perform better than the default UDP when
1568           the network is lossy or congested.  If unsure, say Y.
1569
1570 config ROOT_NFS
1571         bool "Root file system on NFS"
1572         depends on NFS_FS=y && IP_PNP
1573         help
1574           If you want your Linux box to mount its whole root file system (the
1575           one containing the directory /) from some other computer over the
1576           net via NFS (presumably because your box doesn't have a hard disk),
1577           say Y. Read <file:Documentation/nfsroot.txt> for details. It is
1578           likely that in this case, you also want to say Y to "Kernel level IP
1579           autoconfiguration" so that your box can discover its network address
1580           at boot time.
1581
1582           Most people say N here.
1583
1584 config LOCKD
1585         tristate
1586
1587 config LOCKD_V4
1588         bool
1589         depends on NFSD_V3 || NFS_V3
1590         default y
1591
1592 config EXPORTFS
1593         tristate
1594         default NFSD
1595
1596 config SUNRPC
1597         tristate
1598
1599 config SUNRPC_GSS
1600         tristate
1601
1602 config RPCSEC_GSS_KRB5
1603         tristate "Secure RPC: Kerberos V mechanism (EXPERIMENTAL)"
1604         depends on SUNRPC && EXPERIMENTAL
1605         select SUNRPC_GSS
1606         select CRYPTO
1607         select CRYPTO_MD5
1608         select CRYPTO_DES
1609         help
1610           Provides for secure RPC calls by means of a gss-api
1611           mechanism based on Kerberos V5. This is required for
1612           NFSv4.
1613
1614           Note: Requires an auxiliary userspace daemon which may be found on
1615                 http://www.citi.umich.edu/projects/nfsv4/
1616
1617           If unsure, say N.
1618
1619 config SMB_FS
1620         tristate "SMB file system support (to mount Windows shares etc.)"
1621         depends on INET
1622         select NLS
1623         help
1624           SMB (Server Message Block) is the protocol Windows for Workgroups
1625           (WfW), Windows 95/98, Windows NT and OS/2 Lan Manager use to share
1626           files and printers over local networks.  Saying Y here allows you to
1627           mount their file systems (often called "shares" in this context) and
1628           access them just like any other Unix directory.  Currently, this
1629           works only if the Windows machines use TCP/IP as the underlying
1630           transport protocol, and not NetBEUI.  For details, read
1631           <file:Documentation/filesystems/smbfs.txt> and the SMB-HOWTO,
1632           available from <http://www.tldp.org/docs.html#howto>.
1633
1634           Note: if you just want your box to act as an SMB *server* and make
1635           files and printing services available to Windows clients (which need
1636           to have a TCP/IP stack), you don't need to say Y here; you can use
1637           the program SAMBA (available from <ftp://ftp.samba.org/pub/samba/>)
1638           for that.
1639
1640           General information about how to connect Linux, Windows machines and
1641           Macs is on the WWW at <http://www.eats.com/linux_mac_win.html>.
1642
1643           To compile the SMB support as a module, choose M here: the module will
1644           be called smbfs.  Most people say N, however.
1645
1646 config SMB_NLS_DEFAULT
1647         bool "Use a default NLS"
1648         depends on SMB_FS
1649         help
1650           Enabling this will make smbfs use nls translations by default. You
1651           need to specify the local charset (CONFIG_NLS_DEFAULT) in the nls
1652           settings and you need to give the default nls for the SMB server as
1653           CONFIG_SMB_NLS_REMOTE.
1654
1655           The nls settings can be changed at mount time, if your smbmount
1656           supports that, using the codepage and iocharset parameters.
1657
1658           smbmount from samba 2.2.0 or later supports this.
1659
1660 config SMB_NLS_REMOTE
1661         string "Default Remote NLS Option"
1662         depends on SMB_NLS_DEFAULT
1663         default "cp437"
1664         help
1665           This setting allows you to specify a default value for which
1666           codepage the server uses. If this field is left blank no
1667           translations will be done by default. The local codepage/charset
1668           default to CONFIG_NLS_DEFAULT.
1669
1670           The nls settings can be changed at mount time, if your smbmount
1671           supports that, using the codepage and iocharset parameters.
1672
1673           smbmount from samba 2.2.0 or later supports this.
1674
1675 config CIFS
1676         tristate "CIFS support (advanced network filesystem for Samba, Window and other CIFS compliant servers)"
1677         depends on INET
1678         select NLS
1679         help
1680           This is the client VFS module for the Common Internet File System
1681           (CIFS) protocol which is the successor to the Server Message Block 
1682           (SMB) protocol, the native file sharing mechanism for most early
1683           PC operating systems.  The CIFS protocol is fully supported by 
1684           file servers such as Windows 2000 (including Windows 2003, NT 4  
1685           and Windows XP) as well by Samba (which provides excellent CIFS
1686           server support for Linux and many other operating systems). Currently
1687           you must use the smbfs client filesystem to access older SMB servers
1688           such as Windows 9x and OS/2.
1689
1690           The intent of the cifs module is to provide an advanced
1691           network file system client for mounting to CIFS compliant servers, 
1692           including support for dfs (hierarchical name space), secure per-user
1693           session establishment, safe distributed caching (oplock), optional
1694           packet signing, Unicode and other internationalization improvements, 
1695           and optional Winbind (nsswitch) integration. You do not need to enable
1696           cifs if running only a (Samba) server. It is possible to enable both
1697           smbfs and cifs (e.g. if you are using CIFS for accessing Windows 2003
1698           and Samba 3 servers, and smbfs for accessing old servers). If you need 
1699           to mount to Samba or Windows 2003 servers from this machine, say Y.
1700
1701 config CIFS_STATS
1702         bool "CIFS statistics"
1703         depends on CIFS
1704         help
1705           Enabling this option will cause statistics for each server share
1706           mounted by the cifs client to be displayed in /proc/fs/cifs/Stats
1707
1708 config CIFS_POSIX
1709         bool "CIFS POSIX Extensions (EXPERIMENTAL)"
1710         depends on CIFS
1711         help
1712           Enabling this option will cause the cifs client to attempt to
1713           negotiate a newer dialect with servers, such as Samba 3.0.5
1714           or later, that optionally can handle more POSIX like (rather
1715           than Windows like) file behavior.  If unsure, say N.
1716
1717 config NCP_FS
1718         tristate "NCP file system support (to mount NetWare volumes)"
1719         depends on IPX!=n || INET
1720         help
1721           NCP (NetWare Core Protocol) is a protocol that runs over IPX and is
1722           used by Novell NetWare clients to talk to file servers.  It is to
1723           IPX what NFS is to TCP/IP, if that helps.  Saying Y here allows you
1724           to mount NetWare file server volumes and to access them just like
1725           any other Unix directory.  For details, please read the file
1726           <file:Documentation/filesystems/ncpfs.txt> in the kernel source and
1727           the IPX-HOWTO from <http://www.tldp.org/docs.html#howto>.
1728
1729           You do not have to say Y here if you want your Linux box to act as a
1730           file *server* for Novell NetWare clients.
1731
1732           General information about how to connect Linux, Windows machines and
1733           Macs is on the WWW at <http://www.eats.com/linux_mac_win.html>.
1734
1735           To compile this as a module, choose M here: the module will be called
1736           ncpfs.  Say N unless you are connected to a Novell network.
1737
1738 source "fs/ncpfs/Kconfig"
1739
1740 config CODA_FS
1741         tristate "Coda file system support (advanced network fs)"
1742         depends on INET
1743         help
1744           Coda is an advanced network file system, similar to NFS in that it
1745           enables you to mount file systems of a remote server and access them
1746           with regular Unix commands as if they were sitting on your hard
1747           disk.  Coda has several advantages over NFS: support for
1748           disconnected operation (e.g. for laptops), read/write server
1749           replication, security model for authentication and encryption,
1750           persistent client caches and write back caching.
1751
1752           If you say Y here, your Linux box will be able to act as a Coda
1753           *client*.  You will need user level code as well, both for the
1754           client and server.  Servers are currently user level, i.e. they need
1755           no kernel support.  Please read
1756           <file:Documentation/filesystems/coda.txt> and check out the Coda
1757           home page <http://www.coda.cs.cmu.edu/>.
1758
1759           To compile the coda client support as a module, choose M here: the
1760           module will be called coda.
1761
1762 config CODA_FS_OLD_API
1763         bool "Use 96-bit Coda file identifiers"
1764         depends on CODA_FS
1765         help
1766           A new kernel-userspace API had to be introduced for Coda v6.0
1767           to support larger 128-bit file identifiers as needed by the
1768           new realms implementation.
1769
1770           However this new API is not backward compatible with older
1771           clients. If you really need to run the old Coda userspace
1772           cache manager then say Y.
1773           
1774           For most cases you probably want to say N.
1775
1776 config AFS_FS
1777 # for fs/nls/Config.in
1778         tristate "Andrew File System support (AFS) (Experimental)"
1779         depends on INET && EXPERIMENTAL
1780         select RXRPC
1781         help
1782           If you say Y here, you will get an experimental Andrew File System
1783           driver. It currently only supports unsecured read-only AFS access.
1784
1785           See Documentation/filesystems/afs.txt for more intormation.
1786
1787           If unsure, say N.
1788
1789 config RXRPC
1790         tristate
1791
1792 endmenu
1793
1794 menu "Partition Types"
1795
1796 source "fs/partitions/Kconfig"
1797
1798 endmenu
1799
1800 source "fs/nls/Kconfig"
1801
1802 endmenu
1803