[PATCH] arm: Build with -fno-dwarf2-cfi-asm

Mikael Pettersson mikpe at it.uu.se
Sat Jul 10 09:02:17 EDT 2010


Michal Marek writes:
 > Commit d0679c7 restricted this workaround to powerpc only, but it turns
 > out that ARM needs it as well. Fixes
 > https://bugzilla.kernel.org/show_bug.cgi?id=16310 .
 > 
 > Reported-and-Tested-by: Robert Nelson <robertcnelson at gmail.com>
 > Signed-off-by: Michal Marek <mmarek at suse.cz>
 > ---
 >  arch/arm/Makefile |    5 +++++
 >  1 files changed, 5 insertions(+), 0 deletions(-)
 > 
 > diff --git a/arch/arm/Makefile b/arch/arm/Makefile
 > index 64ba313..862d4ba 100644
 > --- a/arch/arm/Makefile
 > +++ b/arch/arm/Makefile
 > @@ -21,6 +21,11 @@ GZFLAGS		:=-9
 >  # Explicitly specifiy 32-bit ARM ISA since toolchain default can be -mthumb:
 >  KBUILD_CFLAGS	+=$(call cc-option,-marm,)
 >  
 > +# FIXME: the module load should be taught about the additional relocs
 > +# generated by this.
 > +# revert to pre-gcc-4.4 behaviour of .eh_frame
 > +KBUILD_CFLAGS	+= $(call cc-option,-fno-dwarf2-cfi-asm)

Appears related to gcc PR40521, which should be fixed in gcc-4.4.3,
though it may have been re-broken in gcc-4.5.0 for in a corner case
<http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40521#c24> that may or
may not apply to the kernel.  There's also a related binutils issue.

The above fix seems appropriate, but the FIXME comment seems wrong:
this is about getting the right kind of exception unwind tables in
the entire kernel, not just relocs in modules.

The comment should just say:
# Never generate .eh_frame:

So for the fix without the comment part:

Acked-by: Mikael Pettersson <mikpe at it.uu.se>



More information about the linux-arm-kernel mailing list