Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 89bace65 authored by Arnd Bergmann's avatar Arnd Bergmann
Browse files

ARM: always use ARM_UNWIND for thumb2 kernels



Thumb2 kernels cannot be built with frame pointers, but can use the
ARM_UNWIND feature for unwinding instead. This makes sure that all
features that rely on unwinding includeing CONFIG_LATENCYTOP and
FAULT_INJECTION_STACKTRACE_FILTER do not enable frame pointers
when the unwinder is already selected, and we always build with
the unwinder when we want a thumb2 kernel, to make sure we do not
get the frame pointers instead.

A different option would be to redefine the CONFIG_FRAME_POINTERS
option on ARM to mean builing with either frame pointers or
the unwinder, and then select which one to use based on the
CPU architecture or another user option. That would still allow
building thumb2 kernels without the unwinder but would also be
more confusing.

Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
parent 9934ebb8
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -1457,6 +1457,7 @@ config THUMB2_KERNEL
	depends on CPU_V7 && !CPU_V6 && !CPU_V6K && EXPERIMENTAL
	select AEABI
	select ARM_ASM_UNIFIED
	select ARM_UNWIND
	help
	  By enabling this option, the kernel will be compiled in
	  Thumb-2 mode. A compiler/assembler that understand the unified
+2 −2
Original line number Diff line number Diff line
@@ -1081,7 +1081,7 @@ config FAULT_INJECTION_STACKTRACE_FILTER
	depends on FAULT_INJECTION_DEBUG_FS && STACKTRACE_SUPPORT
	depends on !X86_64
	select STACKTRACE
	select FRAME_POINTER if !PPC && !S390 && !MICROBLAZE
	select FRAME_POINTER if !PPC && !S390 && !MICROBLAZE && !ARM_UNWIND
	help
	  Provide stacktrace filter for fault-injection capabilities

@@ -1091,7 +1091,7 @@ config LATENCYTOP
	depends on DEBUG_KERNEL
	depends on STACKTRACE_SUPPORT
	depends on PROC_FS
	select FRAME_POINTER if !MIPS && !PPC && !S390 && !MICROBLAZE
	select FRAME_POINTER if !MIPS && !PPC && !S390 && !MICROBLAZE && !ARM_UNWIND
	select KALLSYMS
	select KALLSYMS_ALL
	select STACKTRACE