Re: [PATCH 4/6] Add support for LZO-compressed kernels for ARM

Albin Tonnerre
2009-08-11T16:27:35Z

On Tue, Aug 11, 2009 at 09:03:14AM -0700, H. Peter Anvin wrote :
> On 08/11/2009 02:44 AM, Albin Tonnerre wrote:
> > Hi Sam,
> >
> > On Fri, Aug 07, 2009 at 11:08:16PM +0200, Sam Ravnborg wrote :
> >> We could add libgcc as a prerequisite.
> >> Untested patch below.
> >
> > When compiling with this patch applied, I get the following error:
> >
> > Kernel: arch/arm/boot/Image is ready
> > LD arch/arm/boot/compressed/vmlinux
> > /home/albin/x-tools/arm-unknown-linux-uclibcgnueabi/lib/gcc/arm-unknown-linux-uclibcgnueabi/4.3.2/libgcc.a(_dvmd_lnx.o):
> > In function `__div0':
> > /home/albin/devel/free-electrons/toolchain/targets/src/gcc-4.3.2/libgcc/../gcc/config/arm/lib1funcs.asm:1079:
> > undefined reference to `raise'
> > make[2]: *** [arch/arm/boot/compressed/vmlinux] Error 1
> > make[1]: *** [arch/arm/boot/compressed/vmlinux] Error 2
> >
> > I've got no idea where this symbol is defined, though. Has anyone an idea on
> > this ?
> >
>
> raise() gets called by libgcc to handle division by zero.

So I guess the only options left are either define a dummy raise() function, or
get rid of the divisions like Alain Knaff did in his patch ?

Regards,
--
Albin Tonnerre, Free Electrons
Kernel, drivers and embedded Linux development,
consulting, training and support.