[patch V2 0/9] softirq: Make it RT aware

From: Thomas Gleixner
Date: Fri Dec 04 2020 - 12:10:47 EST


RT runs softirq processing always in thread context and it requires that
both the softirq execution and the BH disabled sections are preemptible.

This is achieved by serialization through per CPU local locks and
substituting a few parts of the existing softirq processing code with
helper functions.

The series applies on top of

git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git irq/core

which already contains the irqstat cleanups and Frederic's irq time
accounting changes.

Changes to V1 which can be found here:

https://lore.kernel.org/r/20201113140207.499353218@xxxxxxxxxxxxx

- Rebase on top of Frederic's irq time accounting changes
- Addressing the review comments
- Fixing the fallout from the irq time accounting updates

The RT variant has sucessfully been tested in the current 5.10-rt
patches. For non-RT kernels there is no functional change.

Thanks,

tglx
---
include/linux/bottom_half.h | 8 +
include/linux/hardirq.h | 1
include/linux/interrupt.h | 13 --
include/linux/preempt.h | 6
include/linux/rcupdate.h | 3
include/linux/sched.h | 3
kernel/sched/cputime.c | 4
kernel/softirq.c | 280 +++++++++++++++++++++++++++++++++++++++++---
kernel/time/tick-sched.c | 2
9 files changed, 291 insertions(+), 29 deletions(-)