WSL2-Linux-Kernel/arch/arm
Ard Biesheuvel 6845d64d51 ARM: 9184/1: return_address: disable again for CONFIG_ARM_UNWIND=y
Commit 41918ec82e ("ARM: ftrace: enable the graph tracer with the EABI
unwinder") removed the dummy version of return_address() that was
provided for the CONFIG_ARM_UNWIND=y case, on the assumption that the
removal of the kernel_text_address() call from unwind_frame() in the
preceding patch made it safe to do so.

However, this turns out not to be the case: Corentin reports warnings
about suspicious RCU usage and other strange behavior that seems to
originate in the stack unwinding that occurs in return_address().

Given that the function graph tracer (which is what these changes were
enabling for CONFIG_ARM_UNWIND=y builds) does not appear to care about
this distinction, let's revert return_address() to the old state.

Cc: Corentin Labbe <clabbe.montjoie@gmail.com>
Fixes: 41918ec82e ("ARM: ftrace: enable the graph tracer with the EABI unwinder")
Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
Reported-by: Corentin Labbe <clabbe.montjoie@gmail.com>
Tested-by: Corentin Labbe <clabbe.montjoie@gmail.com>
Signed-off-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
2022-03-07 11:43:12 +00:00
..
boot ARM: decompressor: disable stack protector 2021-12-03 15:11:24 +01:00
common Merge branches 'devel-stable' and 'misc' into for-linus 2021-11-02 09:04:22 +00:00
configs ARM: defconfig updates for 5.16 2021-11-03 17:07:02 -07:00
crypto
include ARM: 9184/1: return_address: disable again for CONFIG_ARM_UNWIND=y 2022-03-07 11:43:12 +00:00
kernel ARM: 9184/1: return_address: disable again for CONFIG_ARM_UNWIND=y 2022-03-07 11:43:12 +00:00
lib ARM: memset: clean up unwind annotations 2021-12-03 15:11:32 +01:00
mach-actions
mach-alpine
mach-artpec
mach-asm9260
mach-aspeed
mach-at91 ARM: SoC updates for v5.16 2021-11-03 16:48:32 -07:00
mach-axxia
mach-bcm ARM: mach-bcm: disable ftrace in SMC invocation routines 2022-02-10 09:54:54 +01:00
mach-berlin
mach-clps711x
mach-cns3xxx
mach-davinci
mach-digicolor
mach-dove
mach-ep93xx ep93xx: clock: convert in-place to COMMON_CLK 2021-10-20 17:46:36 +02:00
mach-exynos ARM: cacheflush: avoid clobbering the frame pointer 2022-02-09 10:13:10 +01:00
mach-footbridge ARM: footbridge: use GENERIC_IRQ_MULTI_HANDLER 2021-12-06 12:48:47 +01:00
mach-gemini
mach-highbank
mach-hisi memblock: rename memblock_free to memblock_phys_free 2021-11-06 13:30:41 -07:00
mach-imx ARM development for 5.16: 2021-11-02 11:33:15 -07:00
mach-integrator clk: versatile: Rename ICST to CLK_ICST 2021-10-14 18:00:25 -07:00
mach-iop32x ARM: iop: make iop_handle_irq() static 2022-01-25 09:53:52 +01:00
mach-ixp4xx
mach-keystone
mach-lpc18xx
mach-lpc32xx
mach-mediatek
mach-meson
mach-milbeaut
mach-mmp
mach-moxart
mach-mstar
mach-mv78xx0
mach-mvebu
mach-mxs
mach-nomadik
mach-npcm
mach-nspire
mach-omap1 Updates for the interrupt subsystem: 2021-11-01 13:09:10 -07:00
mach-omap2 ARM: SoC updates for v5.16 2021-11-03 16:48:32 -07:00
mach-orion5x
mach-oxnas
mach-pxa
mach-qcom ARM: SoC drivers for 5.16 2021-11-03 17:00:52 -07:00
mach-rda
mach-realtek
mach-realview clk: versatile: Rename ICST to CLK_ICST 2021-10-14 18:00:25 -07:00
mach-rockchip
mach-rpc ARM: riscpc: use GENERIC_IRQ_MULTI_HANDLER 2021-12-03 18:43:38 +01:00
mach-s3c ARM: SoC updates for v5.16 2021-11-03 16:48:32 -07:00
mach-s5pv210 rtc: s3c: remove HAVE_S3C_RTC in favor of direct dependencies 2021-10-17 19:15:12 +02:00
mach-sa1100 ARM: 9101/1: sa1100/assabet: convert LEDs to gpiod APIs 2021-10-25 13:11:54 +01:00
mach-shmobile
mach-socfpga
mach-spear
mach-sti
mach-stm32
mach-sunxi
mach-tegra
mach-uniphier
mach-ux500 clk: ux500: Add driver for the reset portions of PRCC 2021-10-26 18:06:05 -07:00
mach-versatile clk: versatile: Rename ICST to CLK_ICST 2021-10-14 18:00:25 -07:00
mach-vexpress clk: versatile: Rename ICST to CLK_ICST 2021-10-14 18:00:25 -07:00
mach-vt8500
mach-zynq
mm ARM: cacheflush: avoid clobbering the frame pointer 2022-02-09 10:13:10 +01:00
net Merge https://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf-next 2021-11-01 19:59:46 -07:00
nwfpe
plat-omap
plat-orion
plat-pxa
plat-versatile
probes ARM: kprobes: treat R7 as the frame pointer register in Thumb2 builds 2022-02-09 09:13:59 +01:00
tools futex,arm: Wire up sys_futex_waitv() 2021-10-07 13:51:12 +02:00
vdso
vfp
xen xen: allow pv-only hypercalls only with CONFIG_XEN_PV 2021-11-02 08:11:01 -05:00
Kbuild kbuild: use more subdir- for visiting subdirectories while cleaning 2021-10-24 13:49:46 +09:00
Kconfig Revert "ARM: 9144/1: forbid ftrace with clang and thumb2_kernel" 2022-02-10 09:55:05 +01:00
Kconfig-nommu
Kconfig.assembler
Kconfig.debug ARM: ftrace: enable the graph tracer with the EABI unwinder 2022-02-09 09:13:59 +01:00
Makefile ARM: stackprotector: prefer compiler for TLS based per-task protector 2021-12-03 15:11:30 +01:00