Subject: Re: [PATCH] powerpc: Disable RELOCATABLE for COMPILE_TEST with PPC64

From: Benjamin Herrenschmidt <[email-masked]>
Date: Tue, 08 Jul 2014 13:10:11 +1000

On Mon, 2014-07-07 at 20:03 -0700, Guenter Roeck wrote:
> ping ...
> 
> Ben, I know this is not perfect, but on the other side it is simple
> and would be easy to backport. With this in place, a complete/clean
> fix would not be as urgent. Any chance to get it applied ?

Yes, that definitely helps, I'll include it as a band aid.

Cheers,
Ben.

> Nick, this doesn't fix the allyesconfig build - it still fails with
> relocation errors. But it does fix the allmodconfig build.
> 
> Thanks,
> Guenter
> 
> On 06/30/2014 11:45 AM, Guenter Roeck wrote:
> > powerpc:allmodconfig has been failing for some time with the following
> > error.
> >
> > arch/powerpc/kernel/exceptions-64s.S: Assembler messages:
> > arch/powerpc/kernel/exceptions-64s.S:1312: Error: attempt to move .org backwards
> > make[1]: *** [arch/powerpc/kernel/head_64.o] Error 1
> >
> > A number of attempts to fix the problem by moving around code have been
> > unsuccessful and resulted in failed builds for some configurations and
> > the discovery of toolchain bugs.
> >
> > Fix the problem by disabling RELOCATABLE for COMPILE_TEST builds instead.
> > While this is less than perfect, it avoids substantial code changes
> > which would otherwise be necessary just to make COMPILE_TEST builds
> > happy and might have undesired side effects.
> >
> > Signed-off-by: Guenter Roeck <[email-masked]>
> > ---
> >   arch/powerpc/Kconfig | 3 ++-
> >   1 file changed, 2 insertions(+), 1 deletion(-)
> >
> > diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig
> > index bd6dd6e..fefe7c8 100644
> > --- a/arch/powerpc/Kconfig
> > +++ b/arch/powerpc/Kconfig
> > @@ -414,7 +414,7 @@ config KEXEC
> >   config CRASH_DUMP
> >   	bool "Build a kdump crash kernel"
> >   	depends on PPC64 || 6xx || FSL_BOOKE || (44x && !SMP)
> > -	select RELOCATABLE if PPC64 || 44x || FSL_BOOKE
> > +	select RELOCATABLE if (PPC64 && !COMPILE_TEST) || 44x || FSL_BOOKE
> >   	help
> >   	  Build a kernel suitable for use as a kdump capture kernel.
> >   	  The same kernel binary can be used as production kernel and dump
> > @@ -1017,6 +1017,7 @@ endmenu
> >   if PPC64
> >   config RELOCATABLE
> >   	bool "Build a relocatable kernel"
> > +	depends on !COMPILE_TEST
> >   	select NONSTATIC_KERNEL
> >   	help
> >   	  This builds a kernel image that is capable of running anywhere
> >
> 
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to [email-masked]
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at  http://www.tux.org/lkml/