[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Using memdisk with grub2 and a compressed ISO
From: |
Andrei Borzenkov |
Subject: |
Re: Using memdisk with grub2 and a compressed ISO |
Date: |
Wed, 22 Apr 2015 06:59:13 +0300 |
В Tue, 21 Apr 2015 18:29:51 -0400
David Shaw <address@hidden> пишет:
> Hello,
>
> I'm having a problem booting a compressed ISO image using memdisk via grub2
> (version 2.02, from CentOS 7). The entry in my grub.cfg looks like:
>
> menuentry 'boot ISO image' {
> linux16 /memdisk iso
> initrd16 /my-image.iso.gz
> }
>
> When selected, this starts to boot and then fails with:
>
> Ramdisk at 0x37979000, length 0x0033b298
> gzip image: decompressed addr 0x7f7f7000, len 0x00008f58: failed
> Decompression error: output buffer overrun
>
> FWIW, my-image.iso.gz is 3388055
That matches length 0x0033b298 (it is one byte more due to 4 bytes
alignment). So it looks like grub at least passes the right size.
> bytes long compressed, and 9394176 bytes long uncompressed. The box
in question has 8GiB of RAM.
>
> Note that the uncompressed size of the iso in hex comes out to 8F5800. The
> length given in the error message is 8F58 - that is, exactly 256 times too
> small. That seems suspicious.
>
> 1) I have tried this with memdisk from syslinux 4.02, 4.05, and 6.03. Same
> failure each time.
> 2) Changing the level of compression (i.e. gzip -1 instead of gzip -9) does
> not make it work.
> 3) Doing the same thing with grub1 (version 0.97), but using the same image
> and same version of memdisk, *does* work.
Could you show the same messages (load address and size) from grub
legacy?
> 4) Uncompressing the ISO *does* make it work.
> 5) Using "zip" instead of "gzip" *does* make it work.
>
> I've mailed with the syslinux / memdisk folks and they suggested coming here,
> as it looked like a grub2 issue.
>
> Any suggestions on where to look next?
>
Could you provide link to images you are using so I could try to
reproduce it?