tags 426747 fixed-upstream
thanks

Joey Hess wrote:

Hi,

> [EMAIL PROTECTED]:~>upx-ucl-beta vmlinuz-2.6.21-1-486 
>         File size         Ratio      Format      Name
>    --------------------   ------   -----------   -----------
> upx-ucl-beta: vmlinuz-2.6.21-1-486: CantPackException: unrecognized kernel 
> architecture; use option '-f' to force packing
> 
> This seems to be new with 2.6.21 or 2.6.20 or so. If I use -f, it works
> ok and the upxed kernel boots.
> 

Below is the response I got from  John Reiser, one of the upstream upx
authors (see
http://sourceforge.net/tracker/index.php?func=detail&aid=1745653&group_id=2331&atid=102331):

-------------------------------------------------------------
Thank you for the explicit testcase files; they really help.

UPX complains "unrecognized kernel architecture" because CONFIG_PARAVIRT
changes the code at start32.  UPX desires some assurance that the input
really is a bzImage, so UPX checks heuristically.  I have changed the UPX
source to recognize the new instructions.  The change will propagate when
the next release upx-3.01 appears; but the date is unknown.  Meanwhile, use
the '-f' option, or get the updated UPX source.

UPX complains "trailing bytes after kernel image" because
arch/i386/boot/compressed/vmlinux.lds moved the section .data.compressed
ahead of .text, .rodata, etc.  This means that the contents of piggy.o no
longer are last in a bzimage.  I have changed the UPX source to accept the
new layout.  This change also will appear in upx-3.01.

Serious users should consider changing from [re-]compressing bzImage asa
post-processing step (after gzip+head.o+misc.o etc.), to compressing
vmlinux using upx directly instead of gzip.  This is shorter and more
elegant, and may also save a few kilobytes because the UPX decompressors
are smaller.  But it does require changing
arch/i386/boot/compressed/Makefile; see the UPX source for p_vmlinx.cpp
(note the 'x', not a 'z'.)
-------------------------------------------------------------


Best Regards,
robert


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to