Kconfig 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124
  1. config SQUASHFS
  2. tristate "SquashFS 4.0 - Squashed file system support"
  3. depends on BLOCK
  4. help
  5. Saying Y here includes support for SquashFS 4.0 (a Compressed
  6. Read-Only File System). Squashfs is a highly compressed read-only
  7. filesystem for Linux. It uses zlib, lzo or xz compression to
  8. compress both files, inodes and directories. Inodes in the system
  9. are very small and all blocks are packed to minimise data overhead.
  10. Block sizes greater than 4K are supported up to a maximum of 1 Mbytes
  11. (default block size 128K). SquashFS 4.0 supports 64 bit filesystems
  12. and files (larger than 4GB), full uid/gid information, hard links and
  13. timestamps.
  14. Squashfs is intended for general read-only filesystem use, for
  15. archival use (i.e. in cases where a .tar.gz file may be used), and in
  16. embedded systems where low overhead is needed. Further information
  17. and tools are available from http://squashfs.sourceforge.net.
  18. If you want to compile this as a module ( = code which can be
  19. inserted in and removed from the running kernel whenever you want),
  20. say M here. The module will be called squashfs. Note that the root
  21. file system (the one containing the directory /) cannot be compiled
  22. as a module.
  23. If unsure, say N.
  24. config SQUASHFS_XATTR
  25. bool "Squashfs XATTR support"
  26. depends on SQUASHFS
  27. help
  28. Saying Y here includes support for extended attributes (xattrs).
  29. Xattrs are name:value pairs associated with inodes by
  30. the kernel or by users (see the attr(5) manual page).
  31. If unsure, say N.
  32. config SQUASHFS_ZLIB
  33. bool "Include support for ZLIB compressed file systems"
  34. depends on SQUASHFS
  35. select ZLIB_INFLATE
  36. default y
  37. help
  38. ZLIB compression is the standard compression used by Squashfs
  39. file systems. It offers a good trade-off between compression
  40. achieved and the amount of CPU time and memory necessary to
  41. compress and decompress.
  42. If unsure, say Y.
  43. config SQUASHFS_LZO
  44. bool "Include support for LZO compressed file systems"
  45. depends on SQUASHFS
  46. select LZO_DECOMPRESS
  47. help
  48. Saying Y here includes support for reading Squashfs file systems
  49. compressed with LZO compression. LZO compression is mainly
  50. aimed at embedded systems with slower CPUs where the overheads
  51. of zlib are too high.
  52. LZO is not the standard compression used in Squashfs and so most
  53. file systems will be readable without selecting this option.
  54. If unsure, say N.
  55. config SQUASHFS_XZ
  56. bool "Include support for XZ compressed file systems"
  57. depends on SQUASHFS
  58. select XZ_DEC
  59. help
  60. Saying Y here includes support for reading Squashfs file systems
  61. compressed with XZ compression. XZ gives better compression than
  62. the default zlib compression, at the expense of greater CPU and
  63. memory overhead.
  64. XZ is not the standard compression used in Squashfs and so most
  65. file systems will be readable without selecting this option.
  66. If unsure, say N.
  67. config SQUASHFS_4K_DEVBLK_SIZE
  68. bool "Use 4K device block size?"
  69. depends on SQUASHFS
  70. help
  71. By default Squashfs sets the dev block size (sb_min_blocksize)
  72. to 1K or the smallest block size supported by the block device
  73. (if larger). This, because blocks are packed together and
  74. unaligned in Squashfs, should reduce latency.
  75. This, however, gives poor performance on MTD NAND devices where
  76. the optimal I/O size is 4K (even though the devices can support
  77. smaller block sizes).
  78. Using a 4K device block size may also improve overall I/O
  79. performance for some file access patterns (e.g. sequential
  80. accesses of files in filesystem order) on all media.
  81. Setting this option will force Squashfs to use a 4K device block
  82. size by default.
  83. If unsure, say N.
  84. config SQUASHFS_EMBEDDED
  85. bool "Additional option for memory-constrained systems"
  86. depends on SQUASHFS
  87. help
  88. Saying Y here allows you to specify cache size.
  89. If unsure, say N.
  90. config SQUASHFS_FRAGMENT_CACHE_SIZE
  91. int "Number of fragments cached" if SQUASHFS_EMBEDDED
  92. depends on SQUASHFS
  93. default "3"
  94. help
  95. By default SquashFS caches the last 3 fragments read from
  96. the filesystem. Increasing this amount may mean SquashFS
  97. has to re-read fragments less often from disk, at the expense
  98. of extra system memory. Decreasing this amount will mean
  99. SquashFS uses less memory at the expense of extra reads from disk.
  100. Note there must be at least one cached fragment. Anything
  101. much more than three will probably not make much difference.