[PATCH 0/6] Clean up Shadow Call Stack patches for 5.8

Will Deacon
2020-05-15T17:28:13Z

Hi all,

Here's a series of cleanups I hacked together on top of a modified v13
of the Shadow Call Stack patches from Sami:

https://lore.kernel.org/r/20200515172355.GD23334@willie-the-truck

The main changes are:

* Move code out of arch/arm64 and into the core implementation
* Store the full SCS stack pointer instead of the offset
* Code simplification and general style things

I'd like to queue this on top early next week so that it can spend some
quality time in linux-next.

Cheers,

Will

Cc: Sami Tolvanen <samitolvanen@google.com>
Cc: Kees Cook <keescook@chromium.org>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Mark Rutland <mark.rutland@am.com>
Cc: Jann Horn <jannh@google.com>
Cc: Ard Biesheuvel <ardb@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: <kernel-team@android.com>

--->8

Will Deacon (6):
arm64: scs: Store absolute SCS stack pointer value in thread_info
scs: Move accounting into alloc/free functions
arm64: scs: Use 'scs_sp' register alias for x18
scs: Move scs_overflow_check() out of architecture code
scs: Remove references to asm/scs.h from core code
scs: Move DEFINE_SCS macro into core code

arch/Kconfig | 4 +--
arch/arm64/include/asm/scs.h | 29 ++++------------
arch/arm64/include/asm/thread_info.h | 4 +--
arch/arm64/kernel/asm-offsets.c | 2 +-
arch/arm64/kernel/entry.S | 10 +++---
arch/arm64/kernel/head.S | 2 +-
arch/arm64/kernel/process.c | 2 --
arch/arm64/kernel/scs.c | 6 +---
include/linux/scs.h | 16 +++++----
kernel/sched/core.c | 3 ++
kernel/scs.c | 52 +++++++++++++---------------
11 files changed, 55 insertions(+), 75 deletions(-)

--
2.26.2.761.g0e0b3e54be-goog