xref: /openbmc/linux/fs/Kconfig (revision 8fa5723aa7e053d498336b48448b292fc2e0458b)
1#
2# File system configuration
3#
4
5menu "File systems"
6
7if BLOCK
8
9source "fs/ext2/Kconfig"
10source "fs/ext3/Kconfig"
11source "fs/ext4/Kconfig"
12
13config FS_XIP
14# execute in place
15	bool
16	depends on EXT2_FS_XIP
17	default y
18
19source "fs/jbd/Kconfig"
20source "fs/jbd2/Kconfig"
21
22config FS_MBCACHE
23# Meta block cache for Extended Attributes (ext2/ext3/ext4)
24	tristate
25	default y if EXT2_FS=y && EXT2_FS_XATTR
26	default y if EXT3_FS=y && EXT3_FS_XATTR
27	default y if EXT4_FS=y && EXT4_FS_XATTR
28	default m if EXT2_FS_XATTR || EXT3_FS_XATTR || EXT4_FS_XATTR
29
30config REISERFS_FS
31	tristate "Reiserfs support"
32	help
33	  Stores not just filenames but the files themselves in a balanced
34	  tree.  Uses journalling.
35
36	  Balanced trees are more efficient than traditional file system
37	  architectural foundations.
38
39	  In general, ReiserFS is as fast as ext2, but is very efficient with
40	  large directories and small files.  Additional patches are needed
41	  for NFS and quotas, please see <http://www.namesys.com/> for links.
42
43	  It is more easily extended to have features currently found in
44	  database and keyword search systems than block allocation based file
45	  systems are.  The next version will be so extended, and will support
46	  plugins consistent with our motto ``It takes more than a license to
47	  make source code open.''
48
49	  Read <http://www.namesys.com/> to learn more about reiserfs.
50
51	  Sponsored by Threshold Networks, Emusic.com, and Bigstorage.com.
52
53	  If you like it, you can pay us to add new features to it that you
54	  need, buy a support contract, or pay us to port it to another OS.
55
56config REISERFS_CHECK
57	bool "Enable reiserfs debug mode"
58	depends on REISERFS_FS
59	help
60	  If you set this to Y, then ReiserFS will perform every check it can
61	  possibly imagine of its internal consistency throughout its
62	  operation.  It will also go substantially slower.  More than once we
63	  have forgotten that this was on, and then gone despondent over the
64	  latest benchmarks.:-) Use of this option allows our team to go all
65	  out in checking for consistency when debugging without fear of its
66	  effect on end users.  If you are on the verge of sending in a bug
67	  report, say Y and you might get a useful error message.  Almost
68	  everyone should say N.
69
70config REISERFS_PROC_INFO
71	bool "Stats in /proc/fs/reiserfs"
72	depends on REISERFS_FS && PROC_FS
73	help
74	  Create under /proc/fs/reiserfs a hierarchy of files, displaying
75	  various ReiserFS statistics and internal data at the expense of
76	  making your kernel or module slightly larger (+8 KB). This also
77	  increases the amount of kernel memory required for each mount.
78	  Almost everyone but ReiserFS developers and people fine-tuning
79	  reiserfs or tracing problems should say N.
80
81config REISERFS_FS_XATTR
82	bool "ReiserFS extended attributes"
83	depends on REISERFS_FS
84	help
85	  Extended attributes are name:value pairs associated with inodes by
86	  the kernel or by users (see the attr(5) manual page, or visit
87	  <http://acl.bestbits.at/> for details).
88
89	  If unsure, say N.
90
91config REISERFS_FS_POSIX_ACL
92	bool "ReiserFS POSIX Access Control Lists"
93	depends on REISERFS_FS_XATTR
94	select FS_POSIX_ACL
95	help
96	  Posix Access Control Lists (ACLs) support permissions for users and
97	  groups beyond the owner/group/world scheme.
98
99	  To learn more about Access Control Lists, visit the Posix ACLs for
100	  Linux website <http://acl.bestbits.at/>.
101
102	  If you don't know what Access Control Lists are, say N
103
104config REISERFS_FS_SECURITY
105	bool "ReiserFS Security Labels"
106	depends on REISERFS_FS_XATTR
107	help
108	  Security labels support alternative access control models
109	  implemented by security modules like SELinux.  This option
110	  enables an extended attribute handler for file security
111	  labels in the ReiserFS filesystem.
112
113	  If you are not using a security module that requires using
114	  extended attributes for file security labels, say N.
115
116config JFS_FS
117	tristate "JFS filesystem support"
118	select NLS
119	help
120	  This is a port of IBM's Journaled Filesystem .  More information is
121	  available in the file <file:Documentation/filesystems/jfs.txt>.
122
123	  If you do not intend to use the JFS filesystem, say N.
124
125config JFS_POSIX_ACL
126	bool "JFS POSIX Access Control Lists"
127	depends on JFS_FS
128	select FS_POSIX_ACL
129	help
130	  Posix Access Control Lists (ACLs) support permissions for users and
131	  groups beyond the owner/group/world scheme.
132
133	  To learn more about Access Control Lists, visit the Posix ACLs for
134	  Linux website <http://acl.bestbits.at/>.
135
136	  If you don't know what Access Control Lists are, say N
137
138config JFS_SECURITY
139	bool "JFS Security Labels"
140	depends on JFS_FS
141	help
142	  Security labels support alternative access control models
143	  implemented by security modules like SELinux.  This option
144	  enables an extended attribute handler for file security
145	  labels in the jfs filesystem.
146
147	  If you are not using a security module that requires using
148	  extended attributes for file security labels, say N.
149
150config JFS_DEBUG
151	bool "JFS debugging"
152	depends on JFS_FS
153	help
154	  If you are experiencing any problems with the JFS filesystem, say
155	  Y here.  This will result in additional debugging messages to be
156	  written to the system log.  Under normal circumstances, this
157	  results in very little overhead.
158
159config JFS_STATISTICS
160	bool "JFS statistics"
161	depends on JFS_FS
162	help
163	  Enabling this option will cause statistics from the JFS file system
164	  to be made available to the user in the /proc/fs/jfs/ directory.
165
166config FS_POSIX_ACL
167# Posix ACL utility routines (for now, only ext2/ext3/jfs/reiserfs/nfs4)
168#
169# NOTE: you can implement Posix ACLs without these helpers (XFS does).
170# 	Never use this symbol for ifdefs.
171#
172	bool
173	default n
174
175config FILE_LOCKING
176	bool "Enable POSIX file locking API" if EMBEDDED
177	default y
178	help
179	  This option enables standard file locking support, required
180          for filesystems like NFS and for the flock() system
181          call. Disabling this option saves about 11k.
182
183source "fs/xfs/Kconfig"
184source "fs/gfs2/Kconfig"
185
186config OCFS2_FS
187	tristate "OCFS2 file system support"
188	depends on NET && SYSFS
189	select CONFIGFS_FS
190	select JBD2
191	select CRC32
192	help
193	  OCFS2 is a general purpose extent based shared disk cluster file
194	  system with many similarities to ext3. It supports 64 bit inode
195	  numbers, and has automatically extending metadata groups which may
196	  also make it attractive for non-clustered use.
197
198	  You'll want to install the ocfs2-tools package in order to at least
199	  get "mount.ocfs2".
200
201	  Project web page:    http://oss.oracle.com/projects/ocfs2
202	  Tools web page:      http://oss.oracle.com/projects/ocfs2-tools
203	  OCFS2 mailing lists: http://oss.oracle.com/projects/ocfs2/mailman/
204
205	  For more information on OCFS2, see the file
206	  <file:Documentation/filesystems/ocfs2.txt>.
207
208config OCFS2_FS_O2CB
209	tristate "O2CB Kernelspace Clustering"
210	depends on OCFS2_FS
211	default y
212	help
213	  OCFS2 includes a simple kernelspace clustering package, the OCFS2
214	  Cluster Base.  It only requires a very small userspace component
215	  to configure it. This comes with the standard ocfs2-tools package.
216	  O2CB is limited to maintaining a cluster for OCFS2 file systems.
217	  It cannot manage any other cluster applications.
218
219	  It is always safe to say Y here, as the clustering method is
220	  run-time selectable.
221
222config OCFS2_FS_USERSPACE_CLUSTER
223	tristate "OCFS2 Userspace Clustering"
224	depends on OCFS2_FS && DLM
225	default y
226	help
227	  This option will allow OCFS2 to use userspace clustering services
228	  in conjunction with the DLM in fs/dlm.  If you are using a
229	  userspace cluster manager, say Y here.
230
231	  It is safe to say Y, as the clustering method is run-time
232	  selectable.
233
234config OCFS2_FS_STATS
235	bool "OCFS2 statistics"
236	depends on OCFS2_FS
237	default y
238	help
239	  This option allows some fs statistics to be captured. Enabling
240	  this option may increase the memory consumption.
241
242config OCFS2_DEBUG_MASKLOG
243	bool "OCFS2 logging support"
244	depends on OCFS2_FS
245	default y
246	help
247	  The ocfs2 filesystem has an extensive logging system.  The system
248	  allows selection of events to log via files in /sys/o2cb/logmask/.
249	  This option will enlarge your kernel, but it allows debugging of
250	  ocfs2 filesystem issues.
251
252config OCFS2_DEBUG_FS
253	bool "OCFS2 expensive checks"
254	depends on OCFS2_FS
255	default n
256	help
257	  This option will enable expensive consistency checks. Enable
258	  this option for debugging only as it is likely to decrease
259	  performance of the filesystem.
260
261config OCFS2_COMPAT_JBD
262	bool "Use JBD for compatibility"
263	depends on OCFS2_FS
264	default n
265	select JBD
266	help
267	  The ocfs2 filesystem now uses JBD2 for its journalling.  JBD2
268	  is backwards compatible with JBD.  It is safe to say N here.
269	  However, if you really want to use the original JBD, say Y here.
270
271endif # BLOCK
272
273config DNOTIFY
274	bool "Dnotify support"
275	default y
276	help
277	  Dnotify is a directory-based per-fd file change notification system
278	  that uses signals to communicate events to user-space.  There exist
279	  superior alternatives, but some applications may still rely on
280	  dnotify.
281
282	  If unsure, say Y.
283
284config INOTIFY
285	bool "Inotify file change notification support"
286	default y
287	---help---
288	  Say Y here to enable inotify support.  Inotify is a file change
289	  notification system and a replacement for dnotify.  Inotify fixes
290	  numerous shortcomings in dnotify and introduces several new features
291	  including multiple file events, one-shot support, and unmount
292	  notification.
293
294	  For more information, see <file:Documentation/filesystems/inotify.txt>
295
296	  If unsure, say Y.
297
298config INOTIFY_USER
299	bool "Inotify support for userspace"
300	depends on INOTIFY
301	default y
302	---help---
303	  Say Y here to enable inotify support for userspace, including the
304	  associated system calls.  Inotify allows monitoring of both files and
305	  directories via a single open fd.  Events are read from the file
306	  descriptor, which is also select()- and poll()-able.
307
308	  For more information, see <file:Documentation/filesystems/inotify.txt>
309
310	  If unsure, say Y.
311
312config QUOTA
313	bool "Quota support"
314	help
315	  If you say Y here, you will be able to set per user limits for disk
316	  usage (also called disk quotas). Currently, it works for the
317	  ext2, ext3, and reiserfs file system. ext3 also supports journalled
318	  quotas for which you don't need to run quotacheck(8) after an unclean
319	  shutdown.
320	  For further details, read the Quota mini-HOWTO, available from
321	  <http://www.tldp.org/docs.html#howto>, or the documentation provided
322	  with the quota tools. Probably the quota support is only useful for
323	  multi user systems. If unsure, say N.
324
325config QUOTA_NETLINK_INTERFACE
326	bool "Report quota messages through netlink interface"
327	depends on QUOTA && NET
328	help
329	  If you say Y here, quota warnings (about exceeding softlimit, reaching
330	  hardlimit, etc.) will be reported through netlink interface. If unsure,
331	  say Y.
332
333config PRINT_QUOTA_WARNING
334	bool "Print quota warnings to console (OBSOLETE)"
335	depends on QUOTA
336	default y
337	help
338	  If you say Y here, quota warnings (about exceeding softlimit, reaching
339	  hardlimit, etc.) will be printed to the process' controlling terminal.
340	  Note that this behavior is currently deprecated and may go away in
341	  future. Please use notification via netlink socket instead.
342
343config QFMT_V1
344	tristate "Old quota format support"
345	depends on QUOTA
346	help
347	  This quota format was (is) used by kernels earlier than 2.4.22. If
348	  you have quota working and you don't want to convert to new quota
349	  format say Y here.
350
351config QFMT_V2
352	tristate "Quota format v2 support"
353	depends on QUOTA
354	help
355	  This quota format allows using quotas with 32-bit UIDs/GIDs. If you
356	  need this functionality say Y here.
357
358config QUOTACTL
359	bool
360	depends on XFS_QUOTA || QUOTA
361	default y
362
363config AUTOFS_FS
364	tristate "Kernel automounter support"
365	help
366	  The automounter is a tool to automatically mount remote file systems
367	  on demand. This implementation is partially kernel-based to reduce
368	  overhead in the already-mounted case; this is unlike the BSD
369	  automounter (amd), which is a pure user space daemon.
370
371	  To use the automounter you need the user-space tools from the autofs
372	  package; you can find the location in <file:Documentation/Changes>.
373	  You also want to answer Y to "NFS file system support", below.
374
375	  If you want to use the newer version of the automounter with more
376	  features, say N here and say Y to "Kernel automounter v4 support",
377	  below.
378
379	  To compile this support as a module, choose M here: the module will be
380	  called autofs.
381
382	  If you are not a part of a fairly large, distributed network, you
383	  probably do not need an automounter, and can say N here.
384
385config AUTOFS4_FS
386	tristate "Kernel automounter version 4 support (also supports v3)"
387	help
388	  The automounter is a tool to automatically mount remote file systems
389	  on demand. This implementation is partially kernel-based to reduce
390	  overhead in the already-mounted case; this is unlike the BSD
391	  automounter (amd), which is a pure user space daemon.
392
393	  To use the automounter you need the user-space tools from
394	  <ftp://ftp.kernel.org/pub/linux/daemons/autofs/v4/>; you also
395	  want to answer Y to "NFS file system support", below.
396
397	  To compile this support as a module, choose M here: the module will be
398	  called autofs4.  You will need to add "alias autofs autofs4" to your
399	  modules configuration file.
400
401	  If you are not a part of a fairly large, distributed network or
402	  don't have a laptop which needs to dynamically reconfigure to the
403	  local network, you probably do not need an automounter, and can say
404	  N here.
405
406config FUSE_FS
407	tristate "FUSE (Filesystem in Userspace) support"
408	help
409	  With FUSE it is possible to implement a fully functional filesystem
410	  in a userspace program.
411
412	  There's also companion library: libfuse.  This library along with
413	  utilities is available from the FUSE homepage:
414	  <http://fuse.sourceforge.net/>
415
416	  See <file:Documentation/filesystems/fuse.txt> for more information.
417	  See <file:Documentation/Changes> for needed library/utility version.
418
419	  If you want to develop a userspace FS, or if you want to use
420	  a filesystem based on FUSE, answer Y or M.
421
422config GENERIC_ACL
423	bool
424	select FS_POSIX_ACL
425
426if BLOCK
427menu "CD-ROM/DVD Filesystems"
428
429config ISO9660_FS
430	tristate "ISO 9660 CDROM file system support"
431	help
432	  This is the standard file system used on CD-ROMs.  It was previously
433	  known as "High Sierra File System" and is called "hsfs" on other
434	  Unix systems.  The so-called Rock-Ridge extensions which allow for
435	  long Unix filenames and symbolic links are also supported by this
436	  driver.  If you have a CD-ROM drive and want to do more with it than
437	  just listen to audio CDs and watch its LEDs, say Y (and read
438	  <file:Documentation/filesystems/isofs.txt> and the CD-ROM-HOWTO,
439	  available from <http://www.tldp.org/docs.html#howto>), thereby
440	  enlarging your kernel by about 27 KB; otherwise say N.
441
442	  To compile this file system support as a module, choose M here: the
443	  module will be called isofs.
444
445config JOLIET
446	bool "Microsoft Joliet CDROM extensions"
447	depends on ISO9660_FS
448	select NLS
449	help
450	  Joliet is a Microsoft extension for the ISO 9660 CD-ROM file system
451	  which allows for long filenames in unicode format (unicode is the
452	  new 16 bit character code, successor to ASCII, which encodes the
453	  characters of almost all languages of the world; see
454	  <http://www.unicode.org/> for more information).  Say Y here if you
455	  want to be able to read Joliet CD-ROMs under Linux.
456
457config ZISOFS
458	bool "Transparent decompression extension"
459	depends on ISO9660_FS
460	select ZLIB_INFLATE
461	help
462	  This is a Linux-specific extension to RockRidge which lets you store
463	  data in compressed form on a CD-ROM and have it transparently
464	  decompressed when the CD-ROM is accessed.  See
465	  <http://www.kernel.org/pub/linux/utils/fs/zisofs/> for the tools
466	  necessary to create such a filesystem.  Say Y here if you want to be
467	  able to read such compressed CD-ROMs.
468
469config UDF_FS
470	tristate "UDF file system support"
471	select CRC_ITU_T
472	help
473	  This is the new file system used on some CD-ROMs and DVDs. Say Y if
474	  you intend to mount DVD discs or CDRW's written in packet mode, or
475	  if written to by other UDF utilities, such as DirectCD.
476	  Please read <file:Documentation/filesystems/udf.txt>.
477
478	  To compile this file system support as a module, choose M here: the
479	  module will be called udf.
480
481	  If unsure, say N.
482
483config UDF_NLS
484	bool
485	default y
486	depends on (UDF_FS=m && NLS) || (UDF_FS=y && NLS=y)
487
488endmenu
489endif # BLOCK
490
491if BLOCK
492menu "DOS/FAT/NT Filesystems"
493
494config FAT_FS
495	tristate
496	select NLS
497	help
498	  If you want to use one of the FAT-based file systems (the MS-DOS and
499	  VFAT (Windows 95) file systems), then you must say Y or M here
500	  to include FAT support. You will then be able to mount partitions or
501	  diskettes with FAT-based file systems and transparently access the
502	  files on them, i.e. MSDOS files will look and behave just like all
503	  other Unix files.
504
505	  This FAT support is not a file system in itself, it only provides
506	  the foundation for the other file systems. You will have to say Y or
507	  M to at least one of "MSDOS fs support" or "VFAT fs support" in
508	  order to make use of it.
509
510	  Another way to read and write MSDOS floppies and hard drive
511	  partitions from within Linux (but not transparently) is with the
512	  mtools ("man mtools") program suite. You don't need to say Y here in
513	  order to do that.
514
515	  If you need to move large files on floppies between a DOS and a
516	  Linux box, say Y here, mount the floppy under Linux with an MSDOS
517	  file system and use GNU tar's M option. GNU tar is a program
518	  available for Unix and DOS ("man tar" or "info tar").
519
520	  The FAT support will enlarge your kernel by about 37 KB. If unsure,
521	  say Y.
522
523	  To compile this as a module, choose M here: the module will be called
524	  fat.  Note that if you compile the FAT support as a module, you
525	  cannot compile any of the FAT-based file systems into the kernel
526	  -- they will have to be modules as well.
527
528config MSDOS_FS
529	tristate "MSDOS fs support"
530	select FAT_FS
531	help
532	  This allows you to mount MSDOS partitions of your hard drive (unless
533	  they are compressed; to access compressed MSDOS partitions under
534	  Linux, you can either use the DOS emulator DOSEMU, described in the
535	  DOSEMU-HOWTO, available from
536	  <http://www.tldp.org/docs.html#howto>, or try dmsdosfs in
537	  <ftp://ibiblio.org/pub/Linux/system/filesystems/dosfs/>. If you
538	  intend to use dosemu with a non-compressed MSDOS partition, say Y
539	  here) and MSDOS floppies. This means that file access becomes
540	  transparent, i.e. the MSDOS files look and behave just like all
541	  other Unix files.
542
543	  If you have Windows 95 or Windows NT installed on your MSDOS
544	  partitions, you should use the VFAT file system (say Y to "VFAT fs
545	  support" below), or you will not be able to see the long filenames
546	  generated by Windows 95 / Windows NT.
547
548	  This option will enlarge your kernel by about 7 KB. If unsure,
549	  answer Y. This will only work if you said Y to "DOS FAT fs support"
550	  as well. To compile this as a module, choose M here: the module will
551	  be called msdos.
552
553config VFAT_FS
554	tristate "VFAT (Windows-95) fs support"
555	select FAT_FS
556	help
557	  This option provides support for normal Windows file systems with
558	  long filenames.  That includes non-compressed FAT-based file systems
559	  used by Windows 95, Windows 98, Windows NT 4.0, and the Unix
560	  programs from the mtools package.
561
562	  The VFAT support enlarges your kernel by about 10 KB and it only
563	  works if you said Y to the "DOS FAT fs support" above.  Please read
564	  the file <file:Documentation/filesystems/vfat.txt> for details.  If
565	  unsure, say Y.
566
567	  To compile this as a module, choose M here: the module will be called
568	  vfat.
569
570config FAT_DEFAULT_CODEPAGE
571	int "Default codepage for FAT"
572	depends on MSDOS_FS || VFAT_FS
573	default 437
574	help
575	  This option should be set to the codepage of your FAT filesystems.
576	  It can be overridden with the "codepage" mount option.
577	  See <file:Documentation/filesystems/vfat.txt> for more information.
578
579config FAT_DEFAULT_IOCHARSET
580	string "Default iocharset for FAT"
581	depends on VFAT_FS
582	default "iso8859-1"
583	help
584	  Set this to the default input/output character set you'd
585	  like FAT to use. It should probably match the character set
586	  that most of your FAT filesystems use, and can be overridden
587	  with the "iocharset" mount option for FAT filesystems.
588	  Note that "utf8" is not recommended for FAT filesystems.
589	  If unsure, you shouldn't set "utf8" here.
590	  See <file:Documentation/filesystems/vfat.txt> for more information.
591
592config NTFS_FS
593	tristate "NTFS file system support"
594	select NLS
595	help
596	  NTFS is the file system of Microsoft Windows NT, 2000, XP and 2003.
597
598	  Saying Y or M here enables read support.  There is partial, but
599	  safe, write support available.  For write support you must also
600	  say Y to "NTFS write support" below.
601
602	  There are also a number of user-space tools available, called
603	  ntfsprogs.  These include ntfsundelete and ntfsresize, that work
604	  without NTFS support enabled in the kernel.
605
606	  This is a rewrite from scratch of Linux NTFS support and replaced
607	  the old NTFS code starting with Linux 2.5.11.  A backport to
608	  the Linux 2.4 kernel series is separately available as a patch
609	  from the project web site.
610
611	  For more information see <file:Documentation/filesystems/ntfs.txt>
612	  and <http://www.linux-ntfs.org/>.
613
614	  To compile this file system support as a module, choose M here: the
615	  module will be called ntfs.
616
617	  If you are not using Windows NT, 2000, XP or 2003 in addition to
618	  Linux on your computer it is safe to say N.
619
620config NTFS_DEBUG
621	bool "NTFS debugging support"
622	depends on NTFS_FS
623	help
624	  If you are experiencing any problems with the NTFS file system, say
625	  Y here.  This will result in additional consistency checks to be
626	  performed by the driver as well as additional debugging messages to
627	  be written to the system log.  Note that debugging messages are
628	  disabled by default.  To enable them, supply the option debug_msgs=1
629	  at the kernel command line when booting the kernel or as an option
630	  to insmod when loading the ntfs module.  Once the driver is active,
631	  you can enable debugging messages by doing (as root):
632	  echo 1 > /proc/sys/fs/ntfs-debug
633	  Replacing the "1" with "0" would disable debug messages.
634
635	  If you leave debugging messages disabled, this results in little
636	  overhead, but enabling debug messages results in very significant
637	  slowdown of the system.
638
639	  When reporting bugs, please try to have available a full dump of
640	  debugging messages while the misbehaviour was occurring.
641
642config NTFS_RW
643	bool "NTFS write support"
644	depends on NTFS_FS
645	help
646	  This enables the partial, but safe, write support in the NTFS driver.
647
648	  The only supported operation is overwriting existing files, without
649	  changing the file length.  No file or directory creation, deletion or
650	  renaming is possible.  Note only non-resident files can be written to
651	  so you may find that some very small files (<500 bytes or so) cannot
652	  be written to.
653
654	  While we cannot guarantee that it will not damage any data, we have
655	  so far not received a single report where the driver would have
656	  damaged someones data so we assume it is perfectly safe to use.
657
658	  Note:  While write support is safe in this version (a rewrite from
659	  scratch of the NTFS support), it should be noted that the old NTFS
660	  write support, included in Linux 2.5.10 and before (since 1997),
661	  is not safe.
662
663	  This is currently useful with TopologiLinux.  TopologiLinux is run
664	  on top of any DOS/Microsoft Windows system without partitioning your
665	  hard disk.  Unlike other Linux distributions TopologiLinux does not
666	  need its own partition.  For more information see
667	  <http://topologi-linux.sourceforge.net/>
668
669	  It is perfectly safe to say N here.
670
671endmenu
672endif # BLOCK
673
674menu "Pseudo filesystems"
675
676source "fs/proc/Kconfig"
677
678config SYSFS
679	bool "sysfs file system support" if EMBEDDED
680	default y
681	help
682	The sysfs filesystem is a virtual filesystem that the kernel uses to
683	export internal kernel objects, their attributes, and their
684	relationships to one another.
685
686	Users can use sysfs to ascertain useful information about the running
687	kernel, such as the devices the kernel has discovered on each bus and
688	which driver each is bound to. sysfs can also be used to tune devices
689	and other kernel subsystems.
690
691	Some system agents rely on the information in sysfs to operate.
692	/sbin/hotplug uses device and object attributes in sysfs to assist in
693	delegating policy decisions, like persistently naming devices.
694
695	sysfs is currently used by the block subsystem to mount the root
696	partition.  If sysfs is disabled you must specify the boot device on
697	the kernel boot command line via its major and minor numbers.  For
698	example, "root=03:01" for /dev/hda1.
699
700	Designers of embedded systems may wish to say N here to conserve space.
701
702config TMPFS
703	bool "Virtual memory file system support (former shm fs)"
704	help
705	  Tmpfs is a file system which keeps all files in virtual memory.
706
707	  Everything in tmpfs is temporary in the sense that no files will be
708	  created on your hard drive. The files live in memory and swap
709	  space. If you unmount a tmpfs instance, everything stored therein is
710	  lost.
711
712	  See <file:Documentation/filesystems/tmpfs.txt> for details.
713
714config TMPFS_POSIX_ACL
715	bool "Tmpfs POSIX Access Control Lists"
716	depends on TMPFS
717	select GENERIC_ACL
718	help
719	  POSIX Access Control Lists (ACLs) support permissions for users and
720	  groups beyond the owner/group/world scheme.
721
722	  To learn more about Access Control Lists, visit the POSIX ACLs for
723	  Linux website <http://acl.bestbits.at/>.
724
725	  If you don't know what Access Control Lists are, say N.
726
727config HUGETLBFS
728	bool "HugeTLB file system support"
729	depends on X86 || IA64 || PPC64 || SPARC64 || (SUPERH && MMU) || \
730		   (S390 && 64BIT) || BROKEN
731	help
732	  hugetlbfs is a filesystem backing for HugeTLB pages, based on
733	  ramfs. For architectures that support it, say Y here and read
734	  <file:Documentation/vm/hugetlbpage.txt> for details.
735
736	  If unsure, say N.
737
738config HUGETLB_PAGE
739	def_bool HUGETLBFS
740
741config CONFIGFS_FS
742	tristate "Userspace-driven configuration filesystem"
743	depends on SYSFS
744	help
745	  configfs is a ram-based filesystem that provides the converse
746	  of sysfs's functionality. Where sysfs is a filesystem-based
747	  view of kernel objects, configfs is a filesystem-based manager
748	  of kernel objects, or config_items.
749
750	  Both sysfs and configfs can and should exist together on the
751	  same system. One is not a replacement for the other.
752
753endmenu
754
755menu "Miscellaneous filesystems"
756
757config ADFS_FS
758	tristate "ADFS file system support (EXPERIMENTAL)"
759	depends on BLOCK && EXPERIMENTAL
760	help
761	  The Acorn Disc Filing System is the standard file system of the
762	  RiscOS operating system which runs on Acorn's ARM-based Risc PC
763	  systems and the Acorn Archimedes range of machines. If you say Y
764	  here, Linux will be able to read from ADFS partitions on hard drives
765	  and from ADFS-formatted floppy discs. If you also want to be able to
766	  write to those devices, say Y to "ADFS write support" below.
767
768	  The ADFS partition should be the first partition (i.e.,
769	  /dev/[hs]d?1) on each of your drives. Please read the file
770	  <file:Documentation/filesystems/adfs.txt> for further details.
771
772	  To compile this code as a module, choose M here: the module will be
773	  called adfs.
774
775	  If unsure, say N.
776
777config ADFS_FS_RW
778	bool "ADFS write support (DANGEROUS)"
779	depends on ADFS_FS
780	help
781	  If you say Y here, you will be able to write to ADFS partitions on
782	  hard drives and ADFS-formatted floppy disks. This is experimental
783	  codes, so if you're unsure, say N.
784
785config AFFS_FS
786	tristate "Amiga FFS file system support (EXPERIMENTAL)"
787	depends on BLOCK && EXPERIMENTAL
788	help
789	  The Fast File System (FFS) is the common file system used on hard
790	  disks by Amiga(tm) systems since AmigaOS Version 1.3 (34.20).  Say Y
791	  if you want to be able to read and write files from and to an Amiga
792	  FFS partition on your hard drive.  Amiga floppies however cannot be
793	  read with this driver due to an incompatibility of the floppy
794	  controller used in an Amiga and the standard floppy controller in
795	  PCs and workstations. Read <file:Documentation/filesystems/affs.txt>
796	  and <file:fs/affs/Changes>.
797
798	  With this driver you can also mount disk files used by Bernd
799	  Schmidt's Un*X Amiga Emulator
800	  (<http://www.freiburg.linux.de/~uae/>).
801	  If you want to do this, you will also need to say Y or M to "Loop
802	  device support", above.
803
804	  To compile this file system support as a module, choose M here: the
805	  module will be called affs.  If unsure, say N.
806
807config ECRYPT_FS
808	tristate "eCrypt filesystem layer support (EXPERIMENTAL)"
809	depends on EXPERIMENTAL && KEYS && CRYPTO && NET
810	help
811	  Encrypted filesystem that operates on the VFS layer.  See
812	  <file:Documentation/filesystems/ecryptfs.txt> to learn more about
813	  eCryptfs.  Userspace components are required and can be
814	  obtained from <http://ecryptfs.sf.net>.
815
816	  To compile this file system support as a module, choose M here: the
817	  module will be called ecryptfs.
818
819config HFS_FS
820	tristate "Apple Macintosh file system support (EXPERIMENTAL)"
821	depends on BLOCK && EXPERIMENTAL
822	select NLS
823	help
824	  If you say Y here, you will be able to mount Macintosh-formatted
825	  floppy disks and hard drive partitions with full read-write access.
826	  Please read <file:Documentation/filesystems/hfs.txt> to learn about
827	  the available mount options.
828
829	  To compile this file system support as a module, choose M here: the
830	  module will be called hfs.
831
832config HFSPLUS_FS
833	tristate "Apple Extended HFS file system support"
834	depends on BLOCK
835	select NLS
836	select NLS_UTF8
837	help
838	  If you say Y here, you will be able to mount extended format
839	  Macintosh-formatted hard drive partitions with full read-write access.
840
841	  This file system is often called HFS+ and was introduced with
842	  MacOS 8. It includes all Mac specific filesystem data such as
843	  data forks and creator codes, but it also has several UNIX
844	  style features such as file ownership and permissions.
845
846config BEFS_FS
847	tristate "BeOS file system (BeFS) support (read only) (EXPERIMENTAL)"
848	depends on BLOCK && EXPERIMENTAL
849	select NLS
850	help
851	  The BeOS File System (BeFS) is the native file system of Be, Inc's
852	  BeOS. Notable features include support for arbitrary attributes
853	  on files and directories, and database-like indices on selected
854	  attributes. (Also note that this driver doesn't make those features
855	  available at this time). It is a 64 bit filesystem, so it supports
856	  extremely large volumes and files.
857
858	  If you use this filesystem, you should also say Y to at least one
859	  of the NLS (native language support) options below.
860
861	  If you don't know what this is about, say N.
862
863	  To compile this as a module, choose M here: the module will be
864	  called befs.
865
866config BEFS_DEBUG
867	bool "Debug BeFS"
868	depends on BEFS_FS
869	help
870	  If you say Y here, you can use the 'debug' mount option to enable
871	  debugging output from the driver.
872
873config BFS_FS
874	tristate "BFS file system support (EXPERIMENTAL)"
875	depends on BLOCK && EXPERIMENTAL
876	help
877	  Boot File System (BFS) is a file system used under SCO UnixWare to
878	  allow the bootloader access to the kernel image and other important
879	  files during the boot process.  It is usually mounted under /stand
880	  and corresponds to the slice marked as "STAND" in the UnixWare
881	  partition.  You should say Y if you want to read or write the files
882	  on your /stand slice from within Linux.  You then also need to say Y
883	  to "UnixWare slices support", below.  More information about the BFS
884	  file system is contained in the file
885	  <file:Documentation/filesystems/bfs.txt>.
886
887	  If you don't know what this is about, say N.
888
889	  To compile this as a module, choose M here: the module will be called
890	  bfs.  Note that the file system of your root partition (the one
891	  containing the directory /) cannot be compiled as a module.
892
893
894
895config EFS_FS
896	tristate "EFS file system support (read only) (EXPERIMENTAL)"
897	depends on BLOCK && EXPERIMENTAL
898	help
899	  EFS is an older file system used for non-ISO9660 CD-ROMs and hard
900	  disk partitions by SGI's IRIX operating system (IRIX 6.0 and newer
901	  uses the XFS file system for hard disk partitions however).
902
903	  This implementation only offers read-only access. If you don't know
904	  what all this is about, it's safe to say N. For more information
905	  about EFS see its home page at <http://aeschi.ch.eu.org/efs/>.
906
907	  To compile the EFS file system support as a module, choose M here: the
908	  module will be called efs.
909
910source "fs/jffs2/Kconfig"
911# UBIFS File system configuration
912source "fs/ubifs/Kconfig"
913
914config CRAMFS
915	tristate "Compressed ROM file system support (cramfs)"
916	depends on BLOCK
917	select ZLIB_INFLATE
918	help
919	  Saying Y here includes support for CramFs (Compressed ROM File
920	  System).  CramFs is designed to be a simple, small, and compressed
921	  file system for ROM based embedded systems.  CramFs is read-only,
922	  limited to 256MB file systems (with 16MB files), and doesn't support
923	  16/32 bits uid/gid, hard links and timestamps.
924
925	  See <file:Documentation/filesystems/cramfs.txt> and
926	  <file:fs/cramfs/README> for further information.
927
928	  To compile this as a module, choose M here: the module will be called
929	  cramfs.  Note that the root file system (the one containing the
930	  directory /) cannot be compiled as a module.
931
932	  If unsure, say N.
933
934config VXFS_FS
935	tristate "FreeVxFS file system support (VERITAS VxFS(TM) compatible)"
936	depends on BLOCK
937	help
938	  FreeVxFS is a file system driver that support the VERITAS VxFS(TM)
939	  file system format.  VERITAS VxFS(TM) is the standard file system
940	  of SCO UnixWare (and possibly others) and optionally available
941	  for Sunsoft Solaris, HP-UX and many other operating systems.
942	  Currently only readonly access is supported.
943
944	  NOTE: the file system type as used by mount(1), mount(2) and
945	  fstab(5) is 'vxfs' as it describes the file system format, not
946	  the actual driver.
947
948	  To compile this as a module, choose M here: the module will be
949	  called freevxfs.  If unsure, say N.
950
951config MINIX_FS
952	tristate "Minix file system support"
953	depends on BLOCK
954	help
955	  Minix is a simple operating system used in many classes about OS's.
956	  The minix file system (method to organize files on a hard disk
957	  partition or a floppy disk) was the original file system for Linux,
958	  but has been superseded by the second extended file system ext2fs.
959	  You don't want to use the minix file system on your hard disk
960	  because of certain built-in restrictions, but it is sometimes found
961	  on older Linux floppy disks.  This option will enlarge your kernel
962	  by about 28 KB. If unsure, say N.
963
964	  To compile this file system support as a module, choose M here: the
965	  module will be called minix.  Note that the file system of your root
966	  partition (the one containing the directory /) cannot be compiled as
967	  a module.
968
969config OMFS_FS
970	tristate "SonicBlue Optimized MPEG File System support"
971	depends on BLOCK
972	select CRC_ITU_T
973	help
974	  This is the proprietary file system used by the Rio Karma music
975	  player and ReplayTV DVR.  Despite the name, this filesystem is not
976	  more efficient than a standard FS for MPEG files, in fact likely
977	  the opposite is true.  Say Y if you have either of these devices
978	  and wish to mount its disk.
979
980	  To compile this file system support as a module, choose M here: the
981	  module will be called omfs.  If unsure, say N.
982
983config HPFS_FS
984	tristate "OS/2 HPFS file system support"
985	depends on BLOCK
986	help
987	  OS/2 is IBM's operating system for PC's, the same as Warp, and HPFS
988	  is the file system used for organizing files on OS/2 hard disk
989	  partitions. Say Y if you want to be able to read files from and
990	  write files to an OS/2 HPFS partition on your hard drive. OS/2
991	  floppies however are in regular MSDOS format, so you don't need this
992	  option in order to be able to read them. Read
993	  <file:Documentation/filesystems/hpfs.txt>.
994
995	  To compile this file system support as a module, choose M here: the
996	  module will be called hpfs.  If unsure, say N.
997
998
999config QNX4FS_FS
1000	tristate "QNX4 file system support (read only)"
1001	depends on BLOCK
1002	help
1003	  This is the file system used by the real-time operating systems
1004	  QNX 4 and QNX 6 (the latter is also called QNX RTP).
1005	  Further information is available at <http://www.qnx.com/>.
1006	  Say Y if you intend to mount QNX hard disks or floppies.
1007	  Unless you say Y to "QNX4FS read-write support" below, you will
1008	  only be able to read these file systems.
1009
1010	  To compile this file system support as a module, choose M here: the
1011	  module will be called qnx4.
1012
1013	  If you don't know whether you need it, then you don't need it:
1014	  answer N.
1015
1016config QNX4FS_RW
1017	bool "QNX4FS write support (DANGEROUS)"
1018	depends on QNX4FS_FS && EXPERIMENTAL && BROKEN
1019	help
1020	  Say Y if you want to test write support for QNX4 file systems.
1021
1022	  It's currently broken, so for now:
1023	  answer N.
1024
1025config ROMFS_FS
1026	tristate "ROM file system support"
1027	depends on BLOCK
1028	---help---
1029	  This is a very small read-only file system mainly intended for
1030	  initial ram disks of installation disks, but it could be used for
1031	  other read-only media as well.  Read
1032	  <file:Documentation/filesystems/romfs.txt> for details.
1033
1034	  To compile this file system support as a module, choose M here: the
1035	  module will be called romfs.  Note that the file system of your
1036	  root partition (the one containing the directory /) cannot be a
1037	  module.
1038
1039	  If you don't know whether you need it, then you don't need it:
1040	  answer N.
1041
1042
1043config SYSV_FS
1044	tristate "System V/Xenix/V7/Coherent file system support"
1045	depends on BLOCK
1046	help
1047	  SCO, Xenix and Coherent are commercial Unix systems for Intel
1048	  machines, and Version 7 was used on the DEC PDP-11. Saying Y
1049	  here would allow you to read from their floppies and hard disk
1050	  partitions.
1051
1052	  If you have floppies or hard disk partitions like that, it is likely
1053	  that they contain binaries from those other Unix systems; in order
1054	  to run these binaries, you will want to install linux-abi which is
1055	  a set of kernel modules that lets you run SCO, Xenix, Wyse,
1056	  UnixWare, Dell Unix and System V programs under Linux.  It is
1057	  available via FTP (user: ftp) from
1058	  <ftp://ftp.openlinux.org/pub/people/hch/linux-abi/>).
1059	  NOTE: that will work only for binaries from Intel-based systems;
1060	  PDP ones will have to wait until somebody ports Linux to -11 ;-)
1061
1062	  If you only intend to mount files from some other Unix over the
1063	  network using NFS, you don't need the System V file system support
1064	  (but you need NFS file system support obviously).
1065
1066	  Note that this option is generally not needed for floppies, since a
1067	  good portable way to transport files and directories between unixes
1068	  (and even other operating systems) is given by the tar program ("man
1069	  tar" or preferably "info tar").  Note also that this option has
1070	  nothing whatsoever to do with the option "System V IPC". Read about
1071	  the System V file system in
1072	  <file:Documentation/filesystems/sysv-fs.txt>.
1073	  Saying Y here will enlarge your kernel by about 27 KB.
1074
1075	  To compile this as a module, choose M here: the module will be called
1076	  sysv.
1077
1078	  If you haven't heard about all of this before, it's safe to say N.
1079
1080
1081config UFS_FS
1082	tristate "UFS file system support (read only)"
1083	depends on BLOCK
1084	help
1085	  BSD and derivate versions of Unix (such as SunOS, FreeBSD, NetBSD,
1086	  OpenBSD and NeXTstep) use a file system called UFS. Some System V
1087	  Unixes can create and mount hard disk partitions and diskettes using
1088	  this file system as well. Saying Y here will allow you to read from
1089	  these partitions; if you also want to write to them, say Y to the
1090	  experimental "UFS file system write support", below. Please read the
1091	  file <file:Documentation/filesystems/ufs.txt> for more information.
1092
1093          The recently released UFS2 variant (used in FreeBSD 5.x) is
1094          READ-ONLY supported.
1095
1096	  Note that this option is generally not needed for floppies, since a
1097	  good portable way to transport files and directories between unixes
1098	  (and even other operating systems) is given by the tar program ("man
1099	  tar" or preferably "info tar").
1100
1101	  When accessing NeXTstep files, you may need to convert them from the
1102	  NeXT character set to the Latin1 character set; use the program
1103	  recode ("info recode") for this purpose.
1104
1105	  To compile the UFS file system support as a module, choose M here: the
1106	  module will be called ufs.
1107
1108	  If you haven't heard about all of this before, it's safe to say N.
1109
1110config UFS_FS_WRITE
1111	bool "UFS file system write support (DANGEROUS)"
1112	depends on UFS_FS && EXPERIMENTAL
1113	help
1114	  Say Y here if you want to try writing to UFS partitions. This is
1115	  experimental, so you should back up your UFS partitions beforehand.
1116
1117config UFS_DEBUG
1118	bool "UFS debugging"
1119	depends on UFS_FS
1120	help
1121	  If you are experiencing any problems with the UFS filesystem, say
1122	  Y here.  This will result in _many_ additional debugging messages to be
1123	  written to the system log.
1124
1125endmenu
1126
1127menuconfig NETWORK_FILESYSTEMS
1128	bool "Network File Systems"
1129	default y
1130	depends on NET
1131	---help---
1132	  Say Y here to get to see options for network filesystems and
1133	  filesystem-related networking code, such as NFS daemon and
1134	  RPCSEC security modules.
1135
1136	  This option alone does not add any kernel code.
1137
1138	  If you say N, all options in this submenu will be skipped and
1139	  disabled; if unsure, say Y here.
1140
1141if NETWORK_FILESYSTEMS
1142
1143config NFS_FS
1144	tristate "NFS client support"
1145	depends on INET
1146	select LOCKD
1147	select SUNRPC
1148	select NFS_ACL_SUPPORT if NFS_V3_ACL
1149	help
1150	  Choose Y here if you want to access files residing on other
1151	  computers using Sun's Network File System protocol.  To compile
1152	  this file system support as a module, choose M here: the module
1153	  will be called nfs.
1154
1155	  To mount file systems exported by NFS servers, you also need to
1156	  install the user space mount.nfs command which can be found in
1157	  the Linux nfs-utils package, available from http://linux-nfs.org/.
1158	  Information about using the mount command is available in the
1159	  mount(8) man page.  More detail about the Linux NFS client
1160	  implementation is available via the nfs(5) man page.
1161
1162	  Below you can choose which versions of the NFS protocol are
1163	  available in the kernel to mount NFS servers.  Support for NFS
1164	  version 2 (RFC 1094) is always available when NFS_FS is selected.
1165
1166	  To configure a system which mounts its root file system via NFS
1167	  at boot time, say Y here, select "Kernel level IP
1168	  autoconfiguration" in the NETWORK menu, and select "Root file
1169	  system on NFS" below.  You cannot compile this file system as a
1170	  module in this case.
1171
1172	  If unsure, say N.
1173
1174config NFS_V3
1175	bool "NFS client support for NFS version 3"
1176	depends on NFS_FS
1177	help
1178	  This option enables support for version 3 of the NFS protocol
1179	  (RFC 1813) in the kernel's NFS client.
1180
1181	  If unsure, say Y.
1182
1183config NFS_V3_ACL
1184	bool "NFS client support for the NFSv3 ACL protocol extension"
1185	depends on NFS_V3
1186	help
1187	  Some NFS servers support an auxiliary NFSv3 ACL protocol that
1188	  Sun added to Solaris but never became an official part of the
1189	  NFS version 3 protocol.  This protocol extension allows
1190	  applications on NFS clients to manipulate POSIX Access Control
1191	  Lists on files residing on NFS servers.  NFS servers enforce
1192	  ACLs on local files whether this protocol is available or not.
1193
1194	  Choose Y here if your NFS server supports the Solaris NFSv3 ACL
1195	  protocol extension and you want your NFS client to allow
1196	  applications to access and modify ACLs on files on the server.
1197
1198	  Most NFS servers don't support the Solaris NFSv3 ACL protocol
1199	  extension.  You can choose N here or specify the "noacl" mount
1200	  option to prevent your NFS client from trying to use the NFSv3
1201	  ACL protocol.
1202
1203	  If unsure, say N.
1204
1205config NFS_V4
1206	bool "NFS client support for NFS version 4 (EXPERIMENTAL)"
1207	depends on NFS_FS && EXPERIMENTAL
1208	select RPCSEC_GSS_KRB5
1209	help
1210	  This option enables support for version 4 of the NFS protocol
1211	  (RFC 3530) in the kernel's NFS client.
1212
1213	  To mount NFS servers using NFSv4, you also need to install user
1214	  space programs which can be found in the Linux nfs-utils package,
1215	  available from http://linux-nfs.org/.
1216
1217	  If unsure, say N.
1218
1219config ROOT_NFS
1220	bool "Root file system on NFS"
1221	depends on NFS_FS=y && IP_PNP
1222	help
1223	  If you want your system to mount its root file system via NFS,
1224	  choose Y here.  This is common practice for managing systems
1225	  without local permanent storage.  For details, read
1226	  <file:Documentation/filesystems/nfsroot.txt>.
1227
1228	  Most people say N here.
1229
1230config NFSD
1231	tristate "NFS server support"
1232	depends on INET
1233	select LOCKD
1234	select SUNRPC
1235	select EXPORTFS
1236	select NFS_ACL_SUPPORT if NFSD_V2_ACL
1237	help
1238	  Choose Y here if you want to allow other computers to access
1239	  files residing on this system using Sun's Network File System
1240	  protocol.  To compile the NFS server support as a module,
1241	  choose M here: the module will be called nfsd.
1242
1243	  You may choose to use a user-space NFS server instead, in which
1244	  case you can choose N here.
1245
1246	  To export local file systems using NFS, you also need to install
1247	  user space programs which can be found in the Linux nfs-utils
1248	  package, available from http://linux-nfs.org/.  More detail about
1249	  the Linux NFS server implementation is available via the
1250	  exports(5) man page.
1251
1252	  Below you can choose which versions of the NFS protocol are
1253	  available to clients mounting the NFS server on this system.
1254	  Support for NFS version 2 (RFC 1094) is always available when
1255	  CONFIG_NFSD is selected.
1256
1257	  If unsure, say N.
1258
1259config NFSD_V2_ACL
1260	bool
1261	depends on NFSD
1262
1263config NFSD_V3
1264	bool "NFS server support for NFS version 3"
1265	depends on NFSD
1266	help
1267	  This option enables support in your system's NFS server for
1268	  version 3 of the NFS protocol (RFC 1813).
1269
1270	  If unsure, say Y.
1271
1272config NFSD_V3_ACL
1273	bool "NFS server support for the NFSv3 ACL protocol extension"
1274	depends on NFSD_V3
1275	select NFSD_V2_ACL
1276	help
1277	  Solaris NFS servers support an auxiliary NFSv3 ACL protocol that
1278	  never became an official part of the NFS version 3 protocol.
1279	  This protocol extension allows applications on NFS clients to
1280	  manipulate POSIX Access Control Lists on files residing on NFS
1281	  servers.  NFS servers enforce POSIX ACLs on local files whether
1282	  this protocol is available or not.
1283
1284	  This option enables support in your system's NFS server for the
1285	  NFSv3 ACL protocol extension allowing NFS clients to manipulate
1286	  POSIX ACLs on files exported by your system's NFS server.  NFS
1287	  clients which support the Solaris NFSv3 ACL protocol can then
1288	  access and modify ACLs on your NFS server.
1289
1290	  To store ACLs on your NFS server, you also need to enable ACL-
1291	  related CONFIG options for your local file systems of choice.
1292
1293	  If unsure, say N.
1294
1295config NFSD_V4
1296	bool "NFS server support for NFS version 4 (EXPERIMENTAL)"
1297	depends on NFSD && PROC_FS && EXPERIMENTAL
1298	select NFSD_V3
1299	select FS_POSIX_ACL
1300	select RPCSEC_GSS_KRB5
1301	help
1302	  This option enables support in your system's NFS server for
1303	  version 4 of the NFS protocol (RFC 3530).
1304
1305	  To export files using NFSv4, you need to install additional user
1306	  space programs which can be found in the Linux nfs-utils package,
1307	  available from http://linux-nfs.org/.
1308
1309	  If unsure, say N.
1310
1311config LOCKD
1312	tristate
1313
1314config LOCKD_V4
1315	bool
1316	depends on NFSD_V3 || NFS_V3
1317	default y
1318
1319config EXPORTFS
1320	tristate
1321
1322config NFS_ACL_SUPPORT
1323	tristate
1324	select FS_POSIX_ACL
1325
1326config NFS_COMMON
1327	bool
1328	depends on NFSD || NFS_FS
1329	default y
1330
1331config SUNRPC
1332	tristate
1333
1334config SUNRPC_GSS
1335	tristate
1336
1337config SUNRPC_XPRT_RDMA
1338	tristate
1339	depends on SUNRPC && INFINIBAND && EXPERIMENTAL
1340	default SUNRPC && INFINIBAND
1341	help
1342	  This option enables an RPC client transport capability that
1343	  allows the NFS client to mount servers via an RDMA-enabled
1344	  transport.
1345
1346	  To compile RPC client RDMA transport support as a module,
1347	  choose M here: the module will be called xprtrdma.
1348
1349	  If unsure, say N.
1350
1351config SUNRPC_REGISTER_V4
1352	bool "Register local RPC services via rpcbind v4 (EXPERIMENTAL)"
1353	depends on SUNRPC && EXPERIMENTAL
1354	default n
1355	help
1356	  Sun added support for registering RPC services at an IPv6
1357	  address by creating two new versions of the rpcbind protocol
1358	  (RFC 1833).
1359
1360	  This option enables support in the kernel RPC server for
1361	  registering kernel RPC services via version 4 of the rpcbind
1362	  protocol.  If you enable this option, you must run a portmapper
1363	  daemon that supports rpcbind protocol version 4.
1364
1365	  Serving NFS over IPv6 from knfsd (the kernel's NFS server)
1366	  requires that you enable this option and use a portmapper that
1367	  supports rpcbind version 4.
1368
1369	  If unsure, say N to get traditional behavior (register kernel
1370	  RPC services using only rpcbind version 2).  Distributions
1371	  using the legacy Linux portmapper daemon must say N here.
1372
1373config RPCSEC_GSS_KRB5
1374	tristate "Secure RPC: Kerberos V mechanism (EXPERIMENTAL)"
1375	depends on SUNRPC && EXPERIMENTAL
1376	select SUNRPC_GSS
1377	select CRYPTO
1378	select CRYPTO_MD5
1379	select CRYPTO_DES
1380	select CRYPTO_CBC
1381	help
1382	  Choose Y here to enable Secure RPC using the Kerberos version 5
1383	  GSS-API mechanism (RFC 1964).
1384
1385	  Secure RPC calls with Kerberos require an auxiliary user-space
1386	  daemon which may be found in the Linux nfs-utils package
1387	  available from http://linux-nfs.org/.  In addition, user-space
1388	  Kerberos support should be installed.
1389
1390	  If unsure, say N.
1391
1392config RPCSEC_GSS_SPKM3
1393	tristate "Secure RPC: SPKM3 mechanism (EXPERIMENTAL)"
1394	depends on SUNRPC && EXPERIMENTAL
1395	select SUNRPC_GSS
1396	select CRYPTO
1397	select CRYPTO_MD5
1398	select CRYPTO_DES
1399	select CRYPTO_CAST5
1400	select CRYPTO_CBC
1401	help
1402	  Choose Y here to enable Secure RPC using the SPKM3 public key
1403	  GSS-API mechansim (RFC 2025).
1404
1405	  Secure RPC calls with SPKM3 require an auxiliary userspace
1406	  daemon which may be found in the Linux nfs-utils package
1407	  available from http://linux-nfs.org/.
1408
1409	  If unsure, say N.
1410
1411config SMB_FS
1412	tristate "SMB file system support (OBSOLETE, please use CIFS)"
1413	depends on INET
1414	select NLS
1415	help
1416	  SMB (Server Message Block) is the protocol Windows for Workgroups
1417	  (WfW), Windows 95/98, Windows NT and OS/2 Lan Manager use to share
1418	  files and printers over local networks.  Saying Y here allows you to
1419	  mount their file systems (often called "shares" in this context) and
1420	  access them just like any other Unix directory.  Currently, this
1421	  works only if the Windows machines use TCP/IP as the underlying
1422	  transport protocol, and not NetBEUI.  For details, read
1423	  <file:Documentation/filesystems/smbfs.txt> and the SMB-HOWTO,
1424	  available from <http://www.tldp.org/docs.html#howto>.
1425
1426	  Note: if you just want your box to act as an SMB *server* and make
1427	  files and printing services available to Windows clients (which need
1428	  to have a TCP/IP stack), you don't need to say Y here; you can use
1429	  the program SAMBA (available from <ftp://ftp.samba.org/pub/samba/>)
1430	  for that.
1431
1432	  General information about how to connect Linux, Windows machines and
1433	  Macs is on the WWW at <http://www.eats.com/linux_mac_win.html>.
1434
1435	  To compile the SMB support as a module, choose M here:
1436	  the module will be called smbfs.  Most people say N, however.
1437
1438config SMB_NLS_DEFAULT
1439	bool "Use a default NLS"
1440	depends on SMB_FS
1441	help
1442	  Enabling this will make smbfs use nls translations by default. You
1443	  need to specify the local charset (CONFIG_NLS_DEFAULT) in the nls
1444	  settings and you need to give the default nls for the SMB server as
1445	  CONFIG_SMB_NLS_REMOTE.
1446
1447	  The nls settings can be changed at mount time, if your smbmount
1448	  supports that, using the codepage and iocharset parameters.
1449
1450	  smbmount from samba 2.2.0 or later supports this.
1451
1452config SMB_NLS_REMOTE
1453	string "Default Remote NLS Option"
1454	depends on SMB_NLS_DEFAULT
1455	default "cp437"
1456	help
1457	  This setting allows you to specify a default value for which
1458	  codepage the server uses. If this field is left blank no
1459	  translations will be done by default. The local codepage/charset
1460	  default to CONFIG_NLS_DEFAULT.
1461
1462	  The nls settings can be changed at mount time, if your smbmount
1463	  supports that, using the codepage and iocharset parameters.
1464
1465	  smbmount from samba 2.2.0 or later supports this.
1466
1467source "fs/cifs/Kconfig"
1468
1469config NCP_FS
1470	tristate "NCP file system support (to mount NetWare volumes)"
1471	depends on IPX!=n || INET
1472	help
1473	  NCP (NetWare Core Protocol) is a protocol that runs over IPX and is
1474	  used by Novell NetWare clients to talk to file servers.  It is to
1475	  IPX what NFS is to TCP/IP, if that helps.  Saying Y here allows you
1476	  to mount NetWare file server volumes and to access them just like
1477	  any other Unix directory.  For details, please read the file
1478	  <file:Documentation/filesystems/ncpfs.txt> in the kernel source and
1479	  the IPX-HOWTO from <http://www.tldp.org/docs.html#howto>.
1480
1481	  You do not have to say Y here if you want your Linux box to act as a
1482	  file *server* for Novell NetWare clients.
1483
1484	  General information about how to connect Linux, Windows machines and
1485	  Macs is on the WWW at <http://www.eats.com/linux_mac_win.html>.
1486
1487	  To compile this as a module, choose M here: the module will be called
1488	  ncpfs.  Say N unless you are connected to a Novell network.
1489
1490source "fs/ncpfs/Kconfig"
1491
1492config CODA_FS
1493	tristate "Coda file system support (advanced network fs)"
1494	depends on INET
1495	help
1496	  Coda is an advanced network file system, similar to NFS in that it
1497	  enables you to mount file systems of a remote server and access them
1498	  with regular Unix commands as if they were sitting on your hard
1499	  disk.  Coda has several advantages over NFS: support for
1500	  disconnected operation (e.g. for laptops), read/write server
1501	  replication, security model for authentication and encryption,
1502	  persistent client caches and write back caching.
1503
1504	  If you say Y here, your Linux box will be able to act as a Coda
1505	  *client*.  You will need user level code as well, both for the
1506	  client and server.  Servers are currently user level, i.e. they need
1507	  no kernel support.  Please read
1508	  <file:Documentation/filesystems/coda.txt> and check out the Coda
1509	  home page <http://www.coda.cs.cmu.edu/>.
1510
1511	  To compile the coda client support as a module, choose M here: the
1512	  module will be called coda.
1513
1514config AFS_FS
1515	tristate "Andrew File System support (AFS) (EXPERIMENTAL)"
1516	depends on INET && EXPERIMENTAL
1517	select AF_RXRPC
1518	help
1519	  If you say Y here, you will get an experimental Andrew File System
1520	  driver. It currently only supports unsecured read-only AFS access.
1521
1522	  See <file:Documentation/filesystems/afs.txt> for more information.
1523
1524	  If unsure, say N.
1525
1526config AFS_DEBUG
1527	bool "AFS dynamic debugging"
1528	depends on AFS_FS
1529	help
1530	  Say Y here to make runtime controllable debugging messages appear.
1531
1532	  See <file:Documentation/filesystems/afs.txt> for more information.
1533
1534	  If unsure, say N.
1535
1536config 9P_FS
1537	tristate "Plan 9 Resource Sharing Support (9P2000) (Experimental)"
1538	depends on INET && NET_9P && EXPERIMENTAL
1539	help
1540	  If you say Y here, you will get experimental support for
1541	  Plan 9 resource sharing via the 9P2000 protocol.
1542
1543	  See <http://v9fs.sf.net> for more information.
1544
1545	  If unsure, say N.
1546
1547endif # NETWORK_FILESYSTEMS
1548
1549if BLOCK
1550menu "Partition Types"
1551
1552source "fs/partitions/Kconfig"
1553
1554endmenu
1555endif
1556
1557source "fs/nls/Kconfig"
1558source "fs/dlm/Kconfig"
1559
1560endmenu
1561