[ 07/85] arch/tile: avoid generating .eh_frame information in modules
From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Date: 2012-10-26 00:07:29
Also in:
lkml
From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Date: 2012-10-26 00:07:29
Also in:
lkml
3.6-stable review patch. If anyone has any objections, please let me know. ------------------ From: Chris Metcalf <redacted> 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 <redacted> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> --- arch/tile/Makefile | 4 ++++ 1 file changed, 4 insertions(+)
--- a/arch/tile/Makefile
+++ b/arch/tile/Makefile@@ -26,6 +26,10 @@ $(error Set TILERA_ROOT or CROSS_COMPILE 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