~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/fs/squashfs/Kconfig

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

Diff markup

Differences between /fs/squashfs/Kconfig (Version linux-6.12-rc7) and /fs/squashfs/Kconfig (Version linux-3.10.108)


  1 # SPDX-License-Identifier: GPL-2.0-only        << 
  2 config SQUASHFS                                     1 config SQUASHFS
  3         tristate "SquashFS 4.0 - Squashed file      2         tristate "SquashFS 4.0 - Squashed file system support"
  4         depends on BLOCK                            3         depends on BLOCK
  5         help                                        4         help
  6           Saying Y here includes support for S      5           Saying Y here includes support for SquashFS 4.0 (a Compressed
  7           Read-Only File System).  Squashfs is      6           Read-Only File System).  Squashfs is a highly compressed read-only
  8           filesystem for Linux.  It uses zlib,      7           filesystem for Linux.  It uses zlib, lzo or xz compression to
  9           compress both files, inodes and dire      8           compress both files, inodes and directories.  Inodes in the system
 10           are very small and all blocks are pa      9           are very small and all blocks are packed to minimise data overhead.
 11           Block sizes greater than 4K are supp     10           Block sizes greater than 4K are supported up to a maximum of 1 Mbytes
 12           (default block size 128K).  SquashFS     11           (default block size 128K).  SquashFS 4.0 supports 64 bit filesystems
 13           and files (larger than 4GB), full ui     12           and files (larger than 4GB), full uid/gid information, hard links and
 14           timestamps.                              13           timestamps.
 15                                                    14 
 16           Squashfs is intended for general rea     15           Squashfs is intended for general read-only filesystem use, for
 17           archival use (i.e. in cases where a      16           archival use (i.e. in cases where a .tar.gz file may be used), and in
 18           embedded systems where low overhead      17           embedded systems where low overhead is needed.  Further information
 19           and tools are available from http://     18           and tools are available from http://squashfs.sourceforge.net.
 20                                                    19 
 21           If you want to compile this as a mod     20           If you want to compile this as a module ( = code which can be
 22           inserted in and removed from the run     21           inserted in and removed from the running kernel whenever you want),
 23           say M here.  The module will be call     22           say M here.  The module will be called squashfs.  Note that the root
 24           file system (the one containing the      23           file system (the one containing the directory /) cannot be compiled
 25           as a module.                             24           as a module.
 26                                                    25 
 27           If unsure, say N.                        26           If unsure, say N.
 28                                                    27 
 29 choice                                         << 
 30         prompt "File decompression options"    << 
 31         depends on SQUASHFS                    << 
 32         help                                   << 
 33           Squashfs now supports two options fo << 
 34           data.  Traditionally Squashfs has de << 
 35           intermediate buffer and then memcopi << 
 36           Squashfs now supports the ability to << 
 37           the page cache.                      << 
 38                                                << 
 39           If unsure, select "Decompress file d << 
 40                                                << 
 41 config SQUASHFS_FILE_CACHE                     << 
 42         bool "Decompress file data into an int << 
 43         help                                   << 
 44           Decompress file data into an interme << 
 45           memcopy it into the page cache.      << 
 46                                                << 
 47 config SQUASHFS_FILE_DIRECT                    << 
 48         bool "Decompress files directly into t << 
 49         help                                   << 
 50           Directly decompress file data into t << 
 51           Doing so can significantly improve p << 
 52           it eliminates a memcpy and it also r << 
 53           on the single buffer.                << 
 54                                                << 
 55 endchoice                                      << 
 56                                                << 
 57 config SQUASHFS_DECOMP_SINGLE                  << 
 58         depends on SQUASHFS                    << 
 59         def_bool n                             << 
 60                                                << 
 61 config SQUASHFS_DECOMP_MULTI                   << 
 62         depends on SQUASHFS                    << 
 63         def_bool n                             << 
 64                                                << 
 65 config SQUASHFS_DECOMP_MULTI_PERCPU            << 
 66         depends on SQUASHFS                    << 
 67         def_bool n                             << 
 68                                                << 
 69 config SQUASHFS_CHOICE_DECOMP_BY_MOUNT         << 
 70         bool "Select the parallel decompressio << 
 71         depends on SQUASHFS                    << 
 72         default n                              << 
 73         select SQUASHFS_DECOMP_SINGLE          << 
 74         select SQUASHFS_DECOMP_MULTI           << 
 75         select SQUASHFS_DECOMP_MULTI_PERCPU    << 
 76         select SQUASHFS_MOUNT_DECOMP_THREADS   << 
 77         help                                   << 
 78           Compile all parallel decompression m << 
 79           decompression mode by setting "threa << 
 80           default Decompressor parallelisation << 
 81                                                << 
 82 choice                                         << 
 83         prompt "Select decompression parallel  << 
 84         depends on SQUASHFS                    << 
 85         depends on !SQUASHFS_CHOICE_DECOMP_BY_ << 
 86         help                                   << 
 87           Squashfs now supports three parallel << 
 88           decompression.  Each one exhibits va << 
 89           decompression performance and CPU an << 
 90                                                << 
 91           If in doubt, select "Single threaded << 
 92                                                << 
 93 config SQUASHFS_COMPILE_DECOMP_SINGLE          << 
 94         bool "Single threaded compression"     << 
 95         select SQUASHFS_DECOMP_SINGLE          << 
 96         help                                   << 
 97           Traditionally Squashfs has used sing << 
 98           Only one block (data or metadata) ca << 
 99           one time.  This limits CPU and memor << 
100                                                << 
101 config SQUASHFS_COMPILE_DECOMP_MULTI           << 
102         bool "Use multiple decompressors for p << 
103         select SQUASHFS_DECOMP_MULTI           << 
104         help                                   << 
105           By default Squashfs uses a single de << 
106           poor performance on parallel I/O wor << 
107           machines due to waiting on decompres << 
108                                                << 
109           If you have a parallel I/O workload  << 
110           using this option may improve overal << 
111                                                << 
112           This decompressor implementation use << 
113           decompressors per core.  It dynamica << 
114           on a demand basis.                   << 
115                                                << 
116 config SQUASHFS_COMPILE_DECOMP_MULTI_PERCPU    << 
117         bool "Use percpu multiple decompressor << 
118         select SQUASHFS_DECOMP_MULTI_PERCPU    << 
119         help                                   << 
120           By default Squashfs uses a single de << 
121           poor performance on parallel I/O wor << 
122           machines due to waiting on decompres << 
123                                                << 
124           This decompressor implementation use << 
125           decompressor per core.  It uses perc << 
126           decompression is load-balanced acros << 
127 endchoice                                      << 
128                                                << 
129 config SQUASHFS_MOUNT_DECOMP_THREADS           << 
130         bool "Add the mount parameter 'threads << 
131         depends on SQUASHFS                    << 
132         depends on SQUASHFS_DECOMP_MULTI       << 
133         default n                              << 
134         help                                   << 
135           Use threads= to set the decompressio << 
136           If SQUASHFS_CHOICE_DECOMP_BY_MOUNT=y << 
137               threads=<single|multi|percpu|1|2 << 
138           else                                 << 
139               threads=<2|3|...>                << 
140           The upper limit is num_online_cpus() << 
141                                                << 
142 config SQUASHFS_XATTR                              28 config SQUASHFS_XATTR
143         bool "Squashfs XATTR support"              29         bool "Squashfs XATTR support"
144         depends on SQUASHFS                        30         depends on SQUASHFS
145         help                                       31         help
146           Saying Y here includes support for e     32           Saying Y here includes support for extended attributes (xattrs).
147           Xattrs are name:value pairs associat     33           Xattrs are name:value pairs associated with inodes by
148           the kernel or by users (see the attr     34           the kernel or by users (see the attr(5) manual page).
149                                                    35 
150           If unsure, say N.                        36           If unsure, say N.
151                                                    37 
152 config SQUASHFS_ZLIB                               38 config SQUASHFS_ZLIB
153         bool "Include support for ZLIB compres     39         bool "Include support for ZLIB compressed file systems"
154         depends on SQUASHFS                        40         depends on SQUASHFS
155         select ZLIB_INFLATE                        41         select ZLIB_INFLATE
156         default y                                  42         default y
157         help                                       43         help
158           ZLIB compression is the standard com     44           ZLIB compression is the standard compression used by Squashfs
159           file systems.  It offers a good trad     45           file systems.  It offers a good trade-off between compression
160           achieved and the amount of CPU time      46           achieved and the amount of CPU time and memory necessary to
161           compress and decompress.                 47           compress and decompress.
162                                                    48 
163           If unsure, say Y.                        49           If unsure, say Y.
164                                                    50 
165 config SQUASHFS_LZ4                            << 
166         bool "Include support for LZ4 compress << 
167         depends on SQUASHFS                    << 
168         select LZ4_DECOMPRESS                  << 
169         help                                   << 
170           Saying Y here includes support for r << 
171           compressed with LZ4 compression.  LZ << 
172           aimed at embedded systems with slowe << 
173           of zlib are too high.                << 
174                                                << 
175           LZ4 is not the standard compression  << 
176           file systems will be readable withou << 
177                                                << 
178           If unsure, say N.                    << 
179                                                << 
180 config SQUASHFS_LZO                                51 config SQUASHFS_LZO
181         bool "Include support for LZO compress     52         bool "Include support for LZO compressed file systems"
182         depends on SQUASHFS                        53         depends on SQUASHFS
183         select LZO_DECOMPRESS                      54         select LZO_DECOMPRESS
184         help                                       55         help
185           Saying Y here includes support for r     56           Saying Y here includes support for reading Squashfs file systems
186           compressed with LZO compression.  LZ     57           compressed with LZO compression.  LZO compression is mainly
187           aimed at embedded systems with slowe     58           aimed at embedded systems with slower CPUs where the overheads
188           of zlib are too high.                    59           of zlib are too high.
189                                                    60 
190           LZO is not the standard compression      61           LZO is not the standard compression used in Squashfs and so most
191           file systems will be readable withou     62           file systems will be readable without selecting this option.
192                                                    63 
193           If unsure, say N.                        64           If unsure, say N.
194                                                    65 
195 config SQUASHFS_XZ                                 66 config SQUASHFS_XZ
196         bool "Include support for XZ compresse     67         bool "Include support for XZ compressed file systems"
197         depends on SQUASHFS                        68         depends on SQUASHFS
198         select XZ_DEC                              69         select XZ_DEC
199         help                                       70         help
200           Saying Y here includes support for r     71           Saying Y here includes support for reading Squashfs file systems
201           compressed with XZ compression.  XZ      72           compressed with XZ compression.  XZ gives better compression than
202           the default zlib compression, at the     73           the default zlib compression, at the expense of greater CPU and
203           memory overhead.                         74           memory overhead.
204                                                    75 
205           XZ is not the standard compression u     76           XZ is not the standard compression used in Squashfs and so most
206           file systems will be readable withou << 
207                                                << 
208           If unsure, say N.                    << 
209                                                << 
210 config SQUASHFS_ZSTD                           << 
211         bool "Include support for ZSTD compres << 
212         depends on SQUASHFS                    << 
213         select ZSTD_DECOMPRESS                 << 
214         help                                   << 
215           Saying Y here includes support for r << 
216           compressed with ZSTD compression.  Z << 
217           the default ZLIB compression, while  << 
218                                                << 
219           ZSTD is not the standard compression << 
220           file systems will be readable withou     77           file systems will be readable without selecting this option.
221                                                    78 
222           If unsure, say N.                        79           If unsure, say N.
223                                                    80 
224 config SQUASHFS_4K_DEVBLK_SIZE                     81 config SQUASHFS_4K_DEVBLK_SIZE
225         bool "Use 4K device block size?"           82         bool "Use 4K device block size?"
226         depends on SQUASHFS                        83         depends on SQUASHFS
227         help                                       84         help
228           By default Squashfs sets the dev blo     85           By default Squashfs sets the dev block size (sb_min_blocksize)
229           to 1K or the smallest block size sup     86           to 1K or the smallest block size supported by the block device
230           (if larger).  This, because blocks a     87           (if larger).  This, because blocks are packed together and
231           unaligned in Squashfs, should reduce     88           unaligned in Squashfs, should reduce latency.
232                                                    89 
233           This, however, gives poor performanc     90           This, however, gives poor performance on MTD NAND devices where
234           the optimal I/O size is 4K (even tho     91           the optimal I/O size is 4K (even though the devices can support
235           smaller block sizes).                    92           smaller block sizes).
236                                                    93 
237           Using a 4K device block size may als     94           Using a 4K device block size may also improve overall I/O
238           performance for some file access pat     95           performance for some file access patterns (e.g. sequential
239           accesses of files in filesystem orde     96           accesses of files in filesystem order) on all media.
240                                                    97 
241           Setting this option will force Squas     98           Setting this option will force Squashfs to use a 4K device block
242           size by default.                         99           size by default.
243                                                   100 
244           If unsure, say N.                       101           If unsure, say N.
245                                                   102 
246 config SQUASHFS_EMBEDDED                          103 config SQUASHFS_EMBEDDED
247         bool "Additional option for memory-con    104         bool "Additional option for memory-constrained systems"
248         depends on SQUASHFS                       105         depends on SQUASHFS
249         help                                      106         help
250           Saying Y here allows you to specify     107           Saying Y here allows you to specify cache size.
251                                                   108 
252           If unsure, say N.                       109           If unsure, say N.
253                                                   110 
254 config SQUASHFS_FRAGMENT_CACHE_SIZE               111 config SQUASHFS_FRAGMENT_CACHE_SIZE
255         int "Number of fragments cached" if SQ    112         int "Number of fragments cached" if SQUASHFS_EMBEDDED
256         depends on SQUASHFS                       113         depends on SQUASHFS
257         default "3"                               114         default "3"
258         help                                      115         help
259           By default SquashFS caches the last     116           By default SquashFS caches the last 3 fragments read from
260           the filesystem.  Increasing this amo    117           the filesystem.  Increasing this amount may mean SquashFS
261           has to re-read fragments less often     118           has to re-read fragments less often from disk, at the expense
262           of extra system memory.  Decreasing     119           of extra system memory.  Decreasing this amount will mean
263           SquashFS uses less memory at the exp    120           SquashFS uses less memory at the expense of extra reads from disk.
264                                                   121 
265           Note there must be at least one cach    122           Note there must be at least one cached fragment.  Anything
266           much more than three will probably n    123           much more than three will probably not make much difference.
                                                      

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php