On 18/12/2024 5:58 pm, Roger Pau Monné wrote:
> On Tue, Oct 08, 2024 at 11:32:23PM +0200, Marek Marczykowski-Górecki wrote:
>> Linux 6.12-rc2 fails to decompress with the current 128MiB, contrary to
>> the code comment. It results in a failure like this:
>>
>> domainbuilder: detail: xc_dom_kernel_file:
>> filename="/var/lib/qubes/vm-kernels/6.12-rc2-1.1.fc37/vmlinuz"
>> domainbuilder: detail: xc_dom_malloc_filemap : 12104 kB
>> domainbuilder: detail: xc_dom_module_file:
>> filename="/var/lib/qubes/vm-kernels/6.12-rc2-1.1.fc37/initramfs"
>> domainbuilder: detail: xc_dom_malloc_filemap : 7711 kB
>> domainbuilder: detail: xc_dom_boot_xen_init: ver 4.19, caps
>> xen-3.0-x86_64 hvm-3.0-x86_32 hvm-3.0-x86_32p hvm-3.0-x86_64
>> domainbuilder: detail: xc_dom_parse_image: called
>> domainbuilder: detail: xc_dom_find_loader: trying multiboot-binary
>> loader ...
>> domainbuilder: detail: loader probe failed
>> domainbuilder: detail: xc_dom_find_loader: trying HVM-generic loader ...
>> domainbuilder: detail: loader probe failed
>> domainbuilder: detail: xc_dom_find_loader: trying Linux bzImage loader
>> ...
>> domainbuilder: detail: _xc_try_lzma_decode: XZ decompression error:
>> Memory usage limit reached
>> xc: error: panic: xg_dom_bzimageloader.c:761:
>> xc_dom_probe_bzimage_kernel unable to XZ decompress kernel: Invalid kernel
>> domainbuilder: detail: loader probe failed
>> domainbuilder: detail: xc_dom_find_loader: trying ELF-generic loader ...
>> domainbuilder: detail: loader probe failed
>> xc: error: panic: xg_dom_core.c:689: xc_dom_find_loader: no loader
>> found: Invalid kernel
>> libxl: error: libxl_dom.c:566:libxl__build_dom: xc_dom_parse_image failed
>>
>> The important part: XZ decompression error: Memory usage limit reached
>>
>> This looks to be related to the following change in Linux:
>> 8653c909922743bceb4800e5cc26087208c9e0e6 ("xz: use 128 MiB dictionary and
>> force single-threaded mode")
>>
>> Fix this by increasing the block size to 256MiB. And remove the
>> misleading comment (from lack of better ideas).
>>
>> Signed-off-by: Marek Marczykowski-Górecki <[email protected]>
> Reviewed-by: Roger Pau Monné <[email protected]>
>
> I assumed I already RB this, but it seems not.
>
> Could we get an Ack from the tools or libs maintainer for this to go
> in? It's not the best solution, but we need to get this sorted in
> time for 4.20, and backport to stable branches.
I agree. This isn't great, but it's far better than doing nothing, and
there's no other viable alternative proposed.
Acked-by: Andrew Cooper <[email protected]>
~Andrew