Merge to Fedora kernel-2.6.18-1.2260_FC5 patched with stable patch-2.6.18.5-vs2.0...
[linux-2.6.git] / fs / Kconfig
index 75b7c07..e9f181d 100644 (file)
@@ -1285,6 +1285,71 @@ config CRAMFS
 
          If unsure, say N.
 
+config SQUASHFS
+       tristate "SquashFS 3.0 - Squashed file system support"
+       select ZLIB_INFLATE
+       help
+         Saying Y here includes support for SquashFS 3.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 64K.
+         SquashFS 3.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 filesystem 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 options for memory-constrained systems"
+       depends on SQUASHFS
+       default n
+       help
+         Saying Y here allows you to specify cache sizes and how Squashfs
+         allocates memory.  This is only intended for memory constrained
+         systems.
+
+         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 SQUASHFS_VMALLOC
+       bool "Use Vmalloc rather than Kmalloc" if SQUASHFS_EMBEDDED
+       depends on SQUASHFS
+       default n
+       help
+         By default SquashFS uses kmalloc to obtain fragment cache memory.
+         Kmalloc memory is the standard kernel allocator, but it can fail
+         on memory constrained systems.  Because of the way Vmalloc works,
+         Vmalloc can succeed when kmalloc fails.  Specifying this option
+         will make SquashFS always use Vmalloc to allocate the
+         fragment cache memory.
+
+         If unsure, say N.
+
 config VXFS_FS
        tristate "FreeVxFS file system support (VERITAS VxFS(TM) compatible)"
        help