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