summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWilliam Cohen <wcohen@redhat.com>2016-01-22 03:56:26 (GMT)
committerWill Deacon <will.deacon@arm.com>2016-01-26 11:14:13 (GMT)
commit728dabd6d1751cf5e0f8e0535891393da62396e9 (patch)
treed47976f44645369f0d2d93ddf0b9349a5c7b1a12
parentb3122023df935cf14bf951da98ca598d71b9f826 (diff)
downloadlinux-728dabd6d1751cf5e0f8e0535891393da62396e9.tar.xz
Eliminate the .eh_frame sections from the aarch64 vmlinux and kernel modules
By default the aarch64 gcc generates .eh_frame sections. Unlike .debug_frame sections, the .eh_frame sections are loaded into memory when the associated code is loaded. On an example kernel being built with this default the .eh_frame section in vmlinux used an extra 1.7MB of memory. The x86 disables the creation of the .eh_frame section. The aarch64 should probably do the same to save some memory. Signed-off-by: William Cohen <wcohen@redhat.com> Signed-off-by: Will Deacon <will.deacon@arm.com>
-rw-r--r--arch/arm64/Makefile1
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/arm64/Makefile b/arch/arm64/Makefile
index cd822d8..094a137 100644
--- a/arch/arm64/Makefile
+++ b/arch/arm64/Makefile
@@ -27,6 +27,7 @@ $(warning LSE atomics not supported by binutils)
endif
KBUILD_CFLAGS += -mgeneral-regs-only $(lseinstr)
+KBUILD_CFLAGS += -fno-asynchronous-unwind-tables
KBUILD_AFLAGS += $(lseinstr)
ifeq ($(CONFIG_CPU_BIG_ENDIAN), y)