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