summaryrefslogtreecommitdiffstats
path: root/debian/patches-rt/0343-rt-PREEMPT_RT-safety-net-for-backported-patches.patch
blob: b4d67b156a3bc5bccdcb8504a45f177c872b9449 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
From 8961a29e7aa52c929475c767559b23e018fe8b01 Mon Sep 17 00:00:00 2001
From: Clark Williams <clark.williams@gmail.com>
Date: Sun, 30 Jan 2022 15:46:27 -0600
Subject: [PATCH 343/347] rt: PREEMPT_RT safety net for backported patches
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.246-rt110.tar.xz

While doing some 4.19-rt cleanup work, I stumbled across the fact that parts of
two backported patches were dependent on CONFIG_PREEMPT_RT, rather than
the CONFIG_PREEMPT_RT_FULL used in 4.19 and earlier RT series.  The commits
in the linux-stable-rt v4.19-rt branch are:

dad4c6a33bf4e mm: slub: Don't resize the location tracking cache on PREEMPT_RT
e626b6f873f2c net: Treat __napi_schedule_irqoff() as __napi_schedule() on PREEMPT_RT

Discussing this at the Stable RT maintainers meeting, Steven Rostedt suggested that
we automagically select CONFIG_PREEMPT_RT if CONFIG_PREEMPT_RT_FULL is on, giving
us a safety net for any subsequently backported patches. Here's my first cut at
that patch.

I suspect we'll need a similar patch for stable RT kernels < 4.19.

Suggested-by: Steven Rostedt <rostedt@goodmis.org>
Signed-off-by: Clark Williams <williams@redhat.com>
---
 kernel/Kconfig.preempt | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/kernel/Kconfig.preempt b/kernel/Kconfig.preempt
index 306567f72a3e..fd924c0bcea7 100644
--- a/kernel/Kconfig.preempt
+++ b/kernel/Kconfig.preempt
@@ -6,6 +6,9 @@ config PREEMPT_RT_BASE
 	bool
 	select PREEMPT
 
+config PREEMPT_RT
+       bool
+
 config HAVE_PREEMPT_LAZY
 	bool
 
@@ -80,6 +83,7 @@ config PREEMPT_RT_FULL
 	depends on IRQ_FORCED_THREADING
 	select PREEMPT_RT_BASE
 	select PREEMPT_RCU
+	select PREEMPT_RT
 	help
 	  All and everything
 
-- 
2.36.1