diff options
author | Chris Metcalf <cmetcalf@tilera.com> | 2012-10-19 11:43:11 -0400 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2012-10-28 10:02:10 -0700 |
commit | e114f9effa5cf00565b5b051d9e96a8df2c8a4b3 (patch) | |
tree | 3cbfd08a27a1f2265e5829fdc2bac83042ae61b5 /arch | |
parent | 9fc71703e9baa5b5174a72c053ae1ca736df2d42 (diff) |
arch/tile: avoid generating .eh_frame information in modules
commit 627072b06c362bbe7dc256f618aaa63351f0cfe6 upstream.
The tile tool chain uses the .eh_frame information for backtracing.
The vmlinux build drops any .eh_frame sections at link time, but when
present in kernel modules, it causes a module load failure due to the
presence of unsupported pc-relative relocations. When compiling to
use compiler feedback support, the compiler by default omits .eh_frame
information, so we don't see this problem. But when not using feedback,
we need to explicitly suppress the .eh_frame.
Signed-off-by: Chris Metcalf <cmetcalf@tilera.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/tile/Makefile | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/arch/tile/Makefile b/arch/tile/Makefile index 17acce70569..04c637c4eb4 100644 --- a/arch/tile/Makefile +++ b/arch/tile/Makefile @@ -26,6 +26,10 @@ $(error Set TILERA_ROOT or CROSS_COMPILE when building $(ARCH) on $(HOST_ARCH)) endif endif +# The tile compiler may emit .eh_frame information for backtracing. +# In kernel modules, this causes load failures due to unsupported relocations. +KBUILD_CFLAGS += -fno-asynchronous-unwind-tables + ifneq ($(CONFIG_DEBUG_EXTRA_FLAGS),"") KBUILD_CFLAGS += $(CONFIG_DEBUG_EXTRA_FLAGS) endif |