[GIT PULL v2] ARM ftrace fixes for Thumb2, Clang and the EABI unwinder
Russell King (Oracle)
linux at armlinux.org.uk
Mon Feb 28 06:07:13 PST 2022
On Mon, Feb 28, 2022 at 01:46:26PM +0100, Ard Biesheuvel wrote:
> On Mon, 14 Feb 2022 at 15:37, Ard Biesheuvel <ardb at kernel.org> wrote:
> >
> > The following changes since commit 2fa3948244939471bfc93fa2f7cf3a1aadf79822:
> >
> > Merge tag 'arm-vmap-stacks-v6' of git://git.kernel.org/pub/scm/linux/kernel/git/ardb/linux into devel-stable (2022-01-31 15:26:45 +0000)
> >
> > are available in the Git repository at:
> >
> > git://git.kernel.org/pub/scm/linux/kernel/git/ardb/linux.git tags/arm-ftrace-for-rmk
> >
> > for you to fetch changes up to d6800ca73a7d325627c045c16d7cfdc7465f4333:
> >
> > Revert "ARM: 9144/1: forbid ftrace with clang and thumb2_kernel" (2022-02-10 09:55:05 +0100)
> >
> > PRv2: use rmk's current devel-stable as the start commit
> >
> > ----------------------------------------------------------------
> > ARM: ftrace fixes and cleanups
> >
> > Make all flavors of ftrace available on all builds, regardless of ISA
> > choice, unwinder choice or compiler:
> > - use ADD not POP where possible
> > - fix a couple of Thumb2 related issues
> > - enable HAVE_FUNCTION_GRAPH_FP_TEST for robustness
> > - enable the graph tracer with the EABI unwinder
> > - avoid clobbering frame pointer registers to make Clang happy
> >
> > Link: https://lore.kernel.org/linux-arm-kernel/20220203082204.1176734-1-ardb@kernel.org/
> >
> > ----------------------------------------------------------------
> > Ard Biesheuvel (12):
> > ARM: ftrace: ensure that ADR takes the Thumb bit into account
> > ARM: ftrace: use ADD not POP to counter PUSH at entry
> > ARM: ftrace: use trampolines to keep .init.text in branching range
> > ARM: ftrace: avoid redundant loads or clobbering IP
> > ARM: ftrace: avoid unnecessary literal loads
> > ARM: ftrace: enable HAVE_FUNCTION_GRAPH_FP_TEST
> > ARM: unwind: track location of LR value in stack frame
> > ARM: ftrace: enable the graph tracer with the EABI unwinder
> > ARM: kprobes: treat R7 as the frame pointer register in Thumb2 builds
> > ARM: cacheflush: avoid clobbering the frame pointer
> > ARM: mach-bcm: disable ftrace in SMC invocation routines
> > Revert "ARM: 9144/1: forbid ftrace with clang and thumb2_kernel"
> >
> > arch/arm/Kconfig | 4 +-
> > arch/arm/Kconfig.debug | 2 +-
> > arch/arm/include/asm/cacheflush.h | 12 +--
> > arch/arm/include/asm/ftrace.h | 20 +----
> > arch/arm/include/asm/stacktrace.h | 3 +
> > arch/arm/kernel/Makefile | 6 +-
> > arch/arm/kernel/entry-ftrace.S | 128 +++++++++++++++++--------------
> > arch/arm/kernel/ftrace.c | 62 +++++++++++++--
> > arch/arm/kernel/unwind.c | 7 +-
> > arch/arm/mach-bcm/Makefile | 1 +
> > arch/arm/mach-exynos/mcpm-exynos.c | 6 +-
> > arch/arm/mm/cache-v7.S | 40 +++++-----
> > arch/arm/probes/kprobes/actions-common.c | 8 +-
> > arch/arm/probes/kprobes/actions-thumb.c | 16 +++-
> > 14 files changed, 182 insertions(+), 133 deletions(-)
>
> Ping?
Unsurprisingly, this increases the amount of conflicts (both
arch/arm/Kconfig* files) when merging it with v5.17-rc1.
--
RMK's Patch system: https://www.armlinux.org.uk/developer/patches/
FTTP is here! 40Mbps down 10Mbps up. Decent connectivity at last!
More information about the linux-arm-kernel
mailing list