Hi, This is a very good fix: $ ls -sh arch/mips/boot/compressed/vmlinux.bin vmlinux 5.4M arch/mips/boot/compressed/vmlinux.bin 6.9M vmlinux Thanks very much. Acked-by: Wu Zhangjin <wuzhangjin@xxxxxxxxx> Regards, Wu Zhangjin On 8/31/10, Shmulik Ladkani <shmulik.ladkani@xxxxxxxxx> wrote: > Fix VMLINUZ_LOAD_ADDRESS calculation to be based on the length of > vmlinux.bin, > the actual uncompressed kernel binary. > > Previously it was based on the length of KBUILD_IMAGE (the unstripped ELF > vmlinux), which is bigger than vmlinux.bin. > As a result, vmlinuz was loaded into a memory address higher then actually > needed - a problem for small memory platforms. > > Signed-off-by: Shmulik Ladkani <shmulik.ladkani@xxxxxxxxx> > --- > diff --git a/arch/mips/boot/compressed/Makefile > b/arch/mips/boot/compressed/Makefile > index ed9bb70..5fd7f7a 100644 > --- a/arch/mips/boot/compressed/Makefile > +++ b/arch/mips/boot/compressed/Makefile > @@ -59,7 +59,7 @@ $(obj)/piggy.o: $(obj)/dummy.o $(obj)/vmlinux.bin.z FORCE > hostprogs-y := calc_vmlinuz_load_addr > > VMLINUZ_LOAD_ADDRESS = $(shell $(obj)/calc_vmlinuz_load_addr \ > - $(objtree)/$(KBUILD_IMAGE) $(VMLINUX_LOAD_ADDRESS)) > + $(obj)/vmlinux.bin $(VMLINUX_LOAD_ADDRESS)) > > vmlinuzobjs-y += $(obj)/piggy.o > > -- > Shmulik Ladkani >