[GIT PULL] arm64 fixes for -rc3
From: Will Deacon
Date: Fri Jun 26 2020 - 09:21:39 EST
Hi Linus,
Please pull these arm64 fixes for -rc3. The big fix here is to our vDSO
sigreturn trampoline as, after a painfully long stint of debugging, it
turned out that fixing some of our CFI directives in the merge window lit up
a bunch of logic in libgcc which has been shown to SEGV in some cases during
asynchronous pthread cancellation. It looks like we can fix this by
extending the directives to restore most of the interrupted register state
from the sigcontext, but it's risky and hard to test so we opted to remove
the CFI directives for now and rely on the unwinder fallback path like we
used to.
Cheers,
Will
--->8
The following changes since commit 24ebec25fb270100e252b19c288e21bd7d8cc7f7:
arm64: hw_breakpoint: Don't invoke overflow handler on uaccess watchpoints (2020-06-18 11:10:00 +0100)
are available in the Git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git tags/arm64-fixes
for you to fetch changes up to 108447fd0d1a34b0929cd26dc637c917a734ebab:
arm64: Add KRYO{3,4}XX silver CPU cores to SSB safelist (2020-06-25 20:18:57 +0100)
----------------------------------------------------------------
arm64 fixes for -rc3
- Fix unwinding through vDSO sigreturn trampoline
- Fix build warnings by raising minimum LD version for PAC
- Whitelist some Kryo Cortex-A55 derivatives for Meltdown and SSB
- Fix perf register PC reporting for compat tasks
- Fix 'make clean' warning for arm64 signal selftests
- Fix ftrace when BTI is compiled in
- Avoid building the compat vDSO using GCC plugins
----------------------------------------------------------------
Alexander Popov (1):
arm64: vdso: Don't use gcc plugins for building vgettimeofday.c
Jean-Philippe Brucker (1):
arm64: Don't insert a BTI instruction at inner labels
Jiping Ma (1):
arm64: perf: Report the PC value in REGS_ABI_32 mode
Mark Brown (2):
arm64: Depend on newer binutils when building PAC
kselftest: arm64: Remove redundant clean target
Sai Prakash Ranjan (2):
arm64: kpti: Add KRYO{3, 4}XX silver CPU cores to kpti safelist
arm64: Add KRYO{3,4}XX silver CPU cores to SSB safelist
Will Deacon (5):
arm64: vdso: Disable dwarf unwinding through the sigreturn trampoline
arm64: compat: Allow 32-bit vdso and sigpage to co-exist
arm64: compat: Always use sigpage for sigreturn trampoline
arm64: compat: Remove 32-bit sigreturn code from the vDSO
arm64: vdso: Only pass --no-eh-frame-hdr when linker supports it
arch/arm64/Kconfig | 4 +-
arch/arm64/include/asm/linkage.h | 6 ---
arch/arm64/include/asm/mmu.h | 3 ++
arch/arm64/kernel/Makefile | 2 -
arch/arm64/kernel/cpu_errata.c | 2 +
arch/arm64/kernel/cpufeature.c | 2 +
arch/arm64/kernel/perf_regs.c | 25 +++++++++--
arch/arm64/kernel/signal32.c | 27 +-----------
arch/arm64/kernel/vdso.c | 61 ++++++++++++---------------
arch/arm64/kernel/vdso/Makefile | 7 +--
arch/arm64/kernel/vdso/sigreturn.S | 54 +++++++++++++++---------
arch/arm64/kernel/vdso32/Makefile | 1 -
arch/arm64/kernel/vdso32/sigreturn.S | 58 -------------------------
arch/arm64/kernel/vdso32/vdso.lds.S | 12 ------
tools/testing/selftests/arm64/signal/Makefile | 4 --
15 files changed, 98 insertions(+), 170 deletions(-)
delete mode 100644 arch/arm64/kernel/vdso32/sigreturn.S