grub4dos icon indicating copy to clipboard operation
grub4dos copied to clipboard

LZ4 Decompression Missing or Outdated?

Open Oxtie opened this issue 2 years ago • 7 comments
trafficstars

Images compressed with current version of LZ4 compression (1.9.4) fails to decode in Grub4Dos UEFI

Oxtie avatar Jun 14 '23 14:06 Oxtie

To use lz4 compression in grub4dos, you must add the -- content size parameter example Lz4-9-- content size test. img test. lz4

yaya2007 avatar Jun 14 '23 23:06 yaya2007

I already added --content-size 🤔

In old version of lz4 (compiled years back on this link), decoding works normal

These are 2 current versions LZ4.exe (by original author) lz4_win32_v1_9_4.zip 344 KB lz4_win64_v1_9_4.zip 604 KB

edit: Tried both versions, same error

Error 25: (http://grub4dos.chenall.net/e/25) Disk read error

with VHD, i see counter [xxxxM/xxxxxM] but for LZ4, i don't see any mapping counter

Oxtie avatar Jun 15 '23 03:06 Oxtie

Something is very wrong or "un-optimized" in UEFI version of grub4dos. Decoding time is double of Copy speed.

image compressed with the old version of lz4.exe is read once and then, possibly read again by grub4dos (where read counter shows up afterwards)

Oxtie avatar Jun 16 '23 08:06 Oxtie

Use lz4_win64_v1_9_4.zip, use Lz4 -9 --content-size test.img test.lz4, no problem.

map --mem /test.lz4 (hd) chainloader (hd-1) boot

OK!

yaya2007 avatar Jun 30 '23 03:06 yaya2007

Same error . I used (lz4_win64_v1_9_4.zip) lz4 -1 --content-size 10x64.vhd 10x64.lz4

Error 25: (http://grub4dos.chenall.net/e/25)
Disk read error

Oxtie avatar Jul 01 '23 05:07 Oxtie

I understand, you have compressed vhd. It seems that vhd cannot be compressed anymore. He can be dynamic and can check scores.

yaya2007 avatar Jul 01 '23 08:07 yaya2007

If I use Old version of LZ4 by Chenall (http://dl.grub4dos.chenall.net/lz4_xp.7z) then, grub4dos can decompress but take double time!

maybe author updated decompression code of new version?

I use only Fix size VHD (not dynamic)

Oxtie avatar Jul 01 '23 12:07 Oxtie