fs/Kconfig: move btrfs out
[safe/jmp/linux-2.6] / fs / Kconfig
index 02cff86..51f2aba 100644 (file)
@@ -27,141 +27,8 @@ config FS_MBCACHE
        default y if EXT4_FS=y && EXT4_FS_XATTR
        default m if EXT2_FS_XATTR || EXT3_FS_XATTR || EXT4_FS_XATTR
 
-config REISERFS_FS
-       tristate "Reiserfs support"
-       help
-         Stores not just filenames but the files themselves in a balanced
-         tree.  Uses journalling.
-
-         Balanced trees are more efficient than traditional file system
-         architectural foundations.
-
-         In general, ReiserFS is as fast as ext2, but is very efficient with
-         large directories and small files.  Additional patches are needed
-         for NFS and quotas, please see <http://www.namesys.com/> for links.
-
-         It is more easily extended to have features currently found in
-         database and keyword search systems than block allocation based file
-         systems are.  The next version will be so extended, and will support
-         plugins consistent with our motto ``It takes more than a license to
-         make source code open.''
-
-         Read <http://www.namesys.com/> to learn more about reiserfs.
-
-         Sponsored by Threshold Networks, Emusic.com, and Bigstorage.com.
-
-         If you like it, you can pay us to add new features to it that you
-         need, buy a support contract, or pay us to port it to another OS.
-
-config REISERFS_CHECK
-       bool "Enable reiserfs debug mode"
-       depends on REISERFS_FS
-       help
-         If you set this to Y, then ReiserFS will perform every check it can
-         possibly imagine of its internal consistency throughout its
-         operation.  It will also go substantially slower.  More than once we
-         have forgotten that this was on, and then gone despondent over the
-         latest benchmarks.:-) Use of this option allows our team to go all
-         out in checking for consistency when debugging without fear of its
-         effect on end users.  If you are on the verge of sending in a bug
-         report, say Y and you might get a useful error message.  Almost
-         everyone should say N.
-
-config REISERFS_PROC_INFO
-       bool "Stats in /proc/fs/reiserfs"
-       depends on REISERFS_FS && PROC_FS
-       help
-         Create under /proc/fs/reiserfs a hierarchy of files, displaying
-         various ReiserFS statistics and internal data at the expense of
-         making your kernel or module slightly larger (+8 KB). This also
-         increases the amount of kernel memory required for each mount.
-         Almost everyone but ReiserFS developers and people fine-tuning
-         reiserfs or tracing problems should say N.
-
-config REISERFS_FS_XATTR
-       bool "ReiserFS extended attributes"
-       depends on REISERFS_FS
-       help
-         Extended attributes are name:value pairs associated with inodes by
-         the kernel or by users (see the attr(5) manual page, or visit
-         <http://acl.bestbits.at/> for details).
-
-         If unsure, say N.
-
-config REISERFS_FS_POSIX_ACL
-       bool "ReiserFS POSIX Access Control Lists"
-       depends on REISERFS_FS_XATTR
-       select FS_POSIX_ACL
-       help
-         Posix Access Control Lists (ACLs) support permissions for users and
-         groups beyond the owner/group/world scheme.
-
-         To learn more about Access Control Lists, visit the Posix ACLs for
-         Linux website <http://acl.bestbits.at/>.
-
-         If you don't know what Access Control Lists are, say N
-
-config REISERFS_FS_SECURITY
-       bool "ReiserFS Security Labels"
-       depends on REISERFS_FS_XATTR
-       help
-         Security labels support alternative access control models
-         implemented by security modules like SELinux.  This option
-         enables an extended attribute handler for file security
-         labels in the ReiserFS filesystem.
-
-         If you are not using a security module that requires using
-         extended attributes for file security labels, say N.
-
-config JFS_FS
-       tristate "JFS filesystem support"
-       select NLS
-       help
-         This is a port of IBM's Journaled Filesystem .  More information is
-         available in the file <file:Documentation/filesystems/jfs.txt>.
-
-         If you do not intend to use the JFS filesystem, say N.
-
-config JFS_POSIX_ACL
-       bool "JFS POSIX Access Control Lists"
-       depends on JFS_FS
-       select FS_POSIX_ACL
-       help
-         Posix Access Control Lists (ACLs) support permissions for users and
-         groups beyond the owner/group/world scheme.
-
-         To learn more about Access Control Lists, visit the Posix ACLs for
-         Linux website <http://acl.bestbits.at/>.
-
-         If you don't know what Access Control Lists are, say N
-
-config JFS_SECURITY
-       bool "JFS Security Labels"
-       depends on JFS_FS
-       help
-         Security labels support alternative access control models
-         implemented by security modules like SELinux.  This option
-         enables an extended attribute handler for file security
-         labels in the jfs filesystem.
-
-         If you are not using a security module that requires using
-         extended attributes for file security labels, say N.
-
-config JFS_DEBUG
-       bool "JFS debugging"
-       depends on JFS_FS
-       help
-         If you are experiencing any problems with the JFS filesystem, say
-         Y here.  This will result in additional debugging messages to be
-         written to the system log.  Under normal circumstances, this
-         results in very little overhead.
-
-config JFS_STATISTICS
-       bool "JFS statistics"
-       depends on JFS_FS
-       help
-         Enabling this option will cause statistics from the JFS file system
-         to be made available to the user in the /proc/fs/jfs/ directory.
+source "fs/reiserfs/Kconfig"
+source "fs/jfs/Kconfig"
 
 config FS_POSIX_ACL
 # Posix ACL utility routines (for now, only ext2/ext3/jfs/reiserfs/nfs4)
@@ -182,111 +49,8 @@ config FILE_LOCKING
 
 source "fs/xfs/Kconfig"
 source "fs/gfs2/Kconfig"
-
-config OCFS2_FS
-       tristate "OCFS2 file system support"
-       depends on NET && SYSFS
-       select CONFIGFS_FS
-       select JBD2
-       select CRC32
-       select QUOTA
-       select QUOTA_TREE
-       help
-         OCFS2 is a general purpose extent based shared disk cluster file
-         system with many similarities to ext3. It supports 64 bit inode
-         numbers, and has automatically extending metadata groups which may
-         also make it attractive for non-clustered use.
-
-         You'll want to install the ocfs2-tools package in order to at least
-         get "mount.ocfs2".
-
-         Project web page:    http://oss.oracle.com/projects/ocfs2
-         Tools web page:      http://oss.oracle.com/projects/ocfs2-tools
-         OCFS2 mailing lists: http://oss.oracle.com/projects/ocfs2/mailman/
-
-         For more information on OCFS2, see the file
-         <file:Documentation/filesystems/ocfs2.txt>.
-
-config OCFS2_FS_O2CB
-       tristate "O2CB Kernelspace Clustering"
-       depends on OCFS2_FS
-       default y
-       help
-         OCFS2 includes a simple kernelspace clustering package, the OCFS2
-         Cluster Base.  It only requires a very small userspace component
-         to configure it. This comes with the standard ocfs2-tools package.
-         O2CB is limited to maintaining a cluster for OCFS2 file systems.
-         It cannot manage any other cluster applications.
-
-         It is always safe to say Y here, as the clustering method is
-         run-time selectable.
-
-config OCFS2_FS_USERSPACE_CLUSTER
-       tristate "OCFS2 Userspace Clustering"
-       depends on OCFS2_FS && DLM
-       default y
-       help
-         This option will allow OCFS2 to use userspace clustering services
-         in conjunction with the DLM in fs/dlm.  If you are using a
-         userspace cluster manager, say Y here.
-
-         It is safe to say Y, as the clustering method is run-time
-         selectable.
-
-config OCFS2_FS_STATS
-       bool "OCFS2 statistics"
-       depends on OCFS2_FS
-       default y
-       help
-         This option allows some fs statistics to be captured. Enabling
-         this option may increase the memory consumption.
-
-config OCFS2_DEBUG_MASKLOG
-       bool "OCFS2 logging support"
-       depends on OCFS2_FS
-       default y
-       help
-         The ocfs2 filesystem has an extensive logging system.  The system
-         allows selection of events to log via files in /sys/o2cb/logmask/.
-         This option will enlarge your kernel, but it allows debugging of
-         ocfs2 filesystem issues.
-
-config OCFS2_DEBUG_FS
-       bool "OCFS2 expensive checks"
-       depends on OCFS2_FS
-       default n
-       help
-         This option will enable expensive consistency checks. Enable
-         this option for debugging only as it is likely to decrease
-         performance of the filesystem.
-
-config OCFS2_FS_POSIX_ACL
-       bool "OCFS2 POSIX Access Control Lists"
-       depends on OCFS2_FS
-       select FS_POSIX_ACL
-       default n
-       help
-         Posix Access Control Lists (ACLs) support permissions for users and
-         groups beyond the owner/group/world scheme.
-
-config BTRFS_FS
-       tristate "Btrfs filesystem (EXPERIMENTAL) Unstable disk format"
-       depends on EXPERIMENTAL
-       select LIBCRC32C
-       select ZLIB_INFLATE
-       select ZLIB_DEFLATE
-       help
-         Btrfs is a new filesystem with extents, writable snapshotting,
-         support for multiple devices and many more features.
-
-         Btrfs is highly experimental, and THE DISK FORMAT IS NOT YET
-         FINALIZED.  You should say N here unless you are interested in
-         testing Btrfs with non-critical data.
-
-         To compile this file system support as a module, choose M here. The
-         module will be called btrfs.
-
-         If unsure, say N.
+source "fs/ocfs2/Kconfig"
+source "fs/btrfs/Kconfig"
 
 endif # BLOCK
 
@@ -932,6 +696,58 @@ config CRAMFS
 
          If unsure, say N.
 
+config SQUASHFS
+       tristate "SquashFS 4.0 - Squashed file system support"
+       depends on BLOCK
+       select ZLIB_INFLATE
+       help
+         Saying Y here includes support for SquashFS 4.0 (a Compressed
+         Read-Only File System).  Squashfs is a highly compressed read-only
+         filesystem for Linux.  It uses zlib compression to compress both
+         files, inodes and directories.  Inodes in the system are very small
+         and all blocks are packed to minimise data overhead. Block sizes
+         greater than 4K are supported up to a maximum of 1 Mbytes (default
+         block size 128K).  SquashFS 4.0 supports 64 bit filesystems and files
+         (larger than 4GB), full uid/gid information, hard links and
+         timestamps.  
+
+         Squashfs is intended for general read-only filesystem use, for
+         archival use (i.e. in cases where a .tar.gz file may be used), and in
+         embedded systems where low overhead is needed.  Further information
+         and tools are available from http://squashfs.sourceforge.net.
+
+         If you want to compile this as a module ( = code which can be
+         inserted in and removed from the running kernel whenever you want),
+         say M here and read <file:Documentation/modules.txt>.  The module
+         will be called squashfs.  Note that the root file system (the one
+         containing the directory /) cannot be compiled as a module.
+
+         If unsure, say N.
+
+config SQUASHFS_EMBEDDED
+
+       bool "Additional option for memory-constrained systems" 
+       depends on SQUASHFS
+       default n
+       help
+         Saying Y here allows you to specify cache size.
+
+         If unsure, say N.
+
+config SQUASHFS_FRAGMENT_CACHE_SIZE
+       int "Number of fragments cached" if SQUASHFS_EMBEDDED
+       depends on SQUASHFS
+       default "3"
+       help
+         By default SquashFS caches the last 3 fragments read from
+         the filesystem.  Increasing this amount may mean SquashFS
+         has to re-read fragments less often from disk, at the expense
+         of extra system memory.  Decreasing this amount will mean
+         SquashFS uses less memory at the expense of extra reads from disk.
+
+         Note there must be at least one cached fragment.  Anything
+         much more than three will probably not make much difference.
+
 config VXFS_FS
        tristate "FreeVxFS file system support (VERITAS VxFS(TM) compatible)"
        depends on BLOCK