[patch V3 00/32] x86: Add guard pages to exception and interrupt stacks

From: Thomas Gleixner
Date: Sun Apr 14 2019 - 12:02:17 EST


Hi!

This is an updated version of the guard page series:

V1: https://lkml.kernel.org/r/20190331214020.836098943@xxxxxxxxxxxxx
V2: https://lkml.kernel.org/r/20190405150658.237064784@xxxxxxxxxxxxx

Changes vs. V2:

- Fixed the broken stack trace storage in slub

- Adjust the guard page ordering and fix the top macro (Sean)

- Fix an off by one in the debug stack check (Sean)

- Rename ISTACK_ prefix to ESTACK_ (Josh)

- Collected Acked/Reviewed-by tags

The lot is also available from tip:

git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git WIP.x86/stackguards

310a7f5b0b42 ("x86/irq/64: Remove stack overflow debug code")

Thanks,

tglx

8<-------------
Documentation/x86/kernel-stacks | 13 +++-
arch/x86/Kconfig | 2
arch/x86/entry/entry_64.S | 16 ++---
arch/x86/include/asm/cpu_entry_area.h | 69 +++++++++++++++++++++--
arch/x86/include/asm/debugreg.h | 2
arch/x86/include/asm/irq.h | 6 --
arch/x86/include/asm/page_32_types.h | 8 +-
arch/x86/include/asm/page_64_types.h | 16 ++---
arch/x86/include/asm/processor.h | 43 +++++---------
arch/x86/include/asm/smp.h | 2
arch/x86/include/asm/stackprotector.h | 6 +-
arch/x86/include/asm/stacktrace.h | 2
arch/x86/kernel/asm-offsets_64.c | 4 +
arch/x86/kernel/cpu/common.c | 60 +++-----------------
arch/x86/kernel/dumpstack_32.c | 8 +-
arch/x86/kernel/dumpstack_64.c | 99 +++++++++++++++++++++++-----------
arch/x86/kernel/head_64.S | 2
arch/x86/kernel/idt.c | 19 +++---
arch/x86/kernel/irq_32.c | 41 +++++++-------
arch/x86/kernel/irq_64.c | 89 +++++++++++++++---------------
arch/x86/kernel/irqinit.c | 4 -
arch/x86/kernel/nmi.c | 20 ++++++
arch/x86/kernel/setup_percpu.c | 5 -
arch/x86/kernel/smpboot.c | 15 ++++-
arch/x86/kernel/vmlinux.lds.S | 7 +-
arch/x86/mm/cpu_entry_area.c | 64 +++++++++++++++------
arch/x86/mm/fault.c | 3 -
arch/x86/tools/relocs.c | 2
arch/x86/xen/smp_pv.c | 4 +
arch/x86/xen/xen-head.S | 10 +--
drivers/xen/events/events_base.c | 1
mm/slab.c | 30 ++++------
32 files changed, 382 insertions(+), 290 deletions(-)