Re: [PATCH]: cross-compiling x86_64 kernel on i386 user-space fails

Thomas Gleixner
2014-11-23T19:27:28Z

On Sat, 22 Nov 2014, Borislav Petkov wrote:

> On Sat, Nov 22, 2014 at 09:51:10AM +0000, Chris Clayton wrote:
> > Hi,
>
> Yeah, next time make sure you actually CC people :-)
>
> I've added them to CC now.
>
> > Commit e6023367d779060fddc9a52d1f474085b2b36298 broke building an x86_64 kernel in an i386. The change added a call to
> > objdump but neglected to cater for cross-compiling.
> >
> > The patch below fixes the problem for me. I see the commit is now in 3.14 and 3.17 -stable, so the patch needs to go
> > there too.

That's not a specific problem of building x86_64 on i386. The missing
cross compile prefix prevents any cross build of x86.

> CC: stable@vger.kernel.org
>
> in the commit message should help there.
>
>
> > CC: Junjie Mao <eternal.n08@gmail.com>
> > CC: Kees Cook <keescook@chromium.org>
> > CC: Thomas Gleixner <tglx@linutronix.de>
> > CC: Ingo Molnar <mingo@kernel.org>
> > Signed-off-by: Chris Clayton <chris2553@googlemail.com>
>
> Acked-by: Borislav Petkov <bp@suse.de>
>
> > ---
> > --- linux/arch/x86/boot/compressed/Makefile~ 2014-11-22 08:56:50.359706324 +0000
> > +++ linux/arch/x86/boot/compressed/Makefile 2014-11-22 09:04:06.615693435 +0000
> > @@ -76,7 +76,7 @@ suffix-$(CONFIG_KERNEL_XZ) := xz
> > suffix-$(CONFIG_KERNEL_LZO) := lzo
> > suffix-$(CONFIG_KERNEL_LZ4) := lz4
> >
> > -RUN_SIZE = $(shell objdump -h vmlinux | \
> > +RUN_SIZE = $(shell ${CROSS_COMPILE}objdump -h vmlinux | \

While that works, this wants to be:

+RUN_SIZE = $(shell $(OBJDUMP) -h vmlinux | \

I'll fix it up.

Thanks,

tglx