[PATCH 0/3] IRQ stack support for ARM
From: Maninder Singh
Date: Thu Oct 08 2020 - 03:18:03 EST
Observed Stack Overflow on 8KB kernel stack on ARM specially
incase on network interrupts, which results in undeterministic behaviour.
So there is need for per cpu dedicated IRQ stack for ARM.
As ARm does not have extra co-processor register
to save thread info pointer, IRQ stack will be at some
performance cost, so code is under CONFIG_IRQ_STACK.
and we don't have much knowledge and set up for CLANG
and ARM_UNWIND, so dependency added for both cases.
Tested patch set with QEMU for latest kernel
and 4.1 kernel for ARM target with same patch set.
Maninder Singh, Vaneet Narang (3):
arm: introduce self pointer in thread info
arm: introduce IRQ stacks
arm: Modify stack trace and dump for use with irq stack
arch/arm/Kconfig | 10 ++++++++
arch/arm/include/asm/assembler.h | 11 +++++++++
arch/arm/include/asm/irq.h | 13 +++++++++++
arch/arm/include/asm/thread_info.h | 27 ++++++++++++++++++++++
arch/arm/kernel/entry-armv.S | 41 ++++++++++++++++++++++++++++++++-
arch/arm/kernel/irq.c | 24 +++++++++++++++++++
arch/arm/kernel/stacktrace.c | 21 +++++++++++++++++
arch/arm/kernel/traps.c | 47 +++++++++++++++++++++++++++++++++++---
arch/arm/lib/backtrace.S | 18 +++++++++++++++
include/linux/thread_info.h | 4 ++++
kernel/fork.c | 1 +
11 files changed, 213 insertions(+), 4 deletions(-)
--
1.9.1