[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20211006111852.1514359-1-bigeasy@linutronix.de>
Date: Wed, 6 Oct 2021 13:18:48 +0200
From: Sebastian Andrzej Siewior <bigeasy@...utronix.de>
To: linux-kernel@...r.kernel.org
Cc: Peter Zijlstra <peterz@...radead.org>,
Thomas Gleixner <tglx@...utronix.de>
Subject: [PATCH v2 0/4] irq_work: PREEMPT_RT bits
This is v2 of the series. v1 can be found at
https://lkml.kernel.org/20210927211919.310855-1-bigeasy@linutronix.de
Changelog:
v1…v2:
- Drop "irq_work: Ensure that irq_work runs in in-IRQ context". This
triggers if a CPU goes down.
- #3 now uses per-CPU threads with the lowest RT priority instead of
the timer softirq.
This are the PREEMPT_RT bits for irq_work. The annotation for
IRQ_WORK_HARD_IRQ was already merged except for one missed annotation.
Patch #3 introduces the required processing split of callbacks with are
really invoked from hard-irq context and those which are processed in a
per-CPU thread. Unless "LAZY" the thread is woken from the irq_work
hardirq.
This has been done as quite a few them acquire locks which need to sleep
on PREEMPT_RT and must not be invoked in hardirq context. We can not
delay all of them since a few need to be invoked hardirq context in
order to work properly (NOHZ, scheduler, …).
Sebastian
Powered by blists - more mailing lists