Eliminate the .eh_frame sections from the aarch64 vmlinux and kernel modules
authorWilliam Cohen <wcohen@redhat.com>
Fri, 22 Jan 2016 03:56:26 +0000 (22:56 -0500)
committerWill Deacon <will.deacon@arm.com>
Tue, 26 Jan 2016 11:14:13 +0000 (11:14 +0000)
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>
arch/arm64/Makefile

index cd822d8454c0536165810004089c3a7ce5d0068d..094a137f6083e8dbb6c2658b01c6cfa2908a3052 100644 (file)
@@ -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)