Lines Matching +full:multi +full:- +full:block

2  * Wrapper for decompressing XZ-compressed kernel, initramfs, and initrd
11 * Important notes about in-place decompression
21 * The worst case for in-place decompression is that the beginning of
23 * incompressible. Thus, we must look for worst-case expansion when the
30 * Block Header:
31 * Block Header (8-12)
33 * Block Padding (0-3)
35 * Index (8-20)
38 * Normally there is exactly one Block, but let's assume that there are
39 * 2-4 Blocks just in case. Because Stream Header and also Block Header
40 * of the first Block don't make the decompressor produce any uncompressed
41 * data, we can ignore them from our calculations. Block Headers of possible
74 * - 128 bytes for the .xz file format headers;
75 * - 8 bytes per every 32 KiB of uncompressed size (one LZMA2 chunk header
77 * - 64 KiB (biggest possible LZMA2 chunk payload size) to make sure that
91 * Thus, when updating Deflate-only in-place kernel decompressor to
98 * decompression (pre-boot code). <linux/decompress/mm.h> will define
152 * when XZ_DYNALLOC is used, but the pre-boot free() doesn't support it.
165 * FIXME: Not all basic memory functions are provided in architecture-specific
170 * is fast enough. memcpy/memmove speed matters in multi-call mode, but
171 * the kernel image is decompressed in single-call mode, in which only
217 while (i-- > 0) in memmove()
242 /* Size of the input and output buffers in multi-call mode */
248 * This wrapper will automatically choose single-call or multi-call mode
249 * of the native XZ decoder API. The single-call mode can be used only when
274 s = xz_dec_init(XZ_DYNALLOC, (uint32_t)-1); in unxz()
281 b.out_size = (size_t)-1; in unxz()
358 /* This can occur only in multi-call mode. */ in unxz()
373 error("XZ-compressed data is corrupt"); in unxz()
381 return -1; in unxz()
392 return -1; in unxz()
396 * This macro is used by architecture-specific files to decompress