diff options
Diffstat (limited to 'debian/patches-rt/0138-tasklets-Prevent-tasklet_unlock_spin_wait-deadlock-o.patch')
-rw-r--r-- | debian/patches-rt/0138-tasklets-Prevent-tasklet_unlock_spin_wait-deadlock-o.patch | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/debian/patches-rt/0138-tasklets-Prevent-tasklet_unlock_spin_wait-deadlock-o.patch b/debian/patches-rt/0138-tasklets-Prevent-tasklet_unlock_spin_wait-deadlock-o.patch index 9f446b54f..27fe09e45 100644 --- a/debian/patches-rt/0138-tasklets-Prevent-tasklet_unlock_spin_wait-deadlock-o.patch +++ b/debian/patches-rt/0138-tasklets-Prevent-tasklet_unlock_spin_wait-deadlock-o.patch @@ -1,9 +1,9 @@ -From 42114155db1a5548923ac48a09b3f228b29d3b09 Mon Sep 17 00:00:00 2001 +From 12db21385fbc33222708c8d540380a06c6b97a05 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner <tglx@linutronix.de> Date: Tue, 9 Mar 2021 09:42:10 +0100 Subject: [PATCH 138/323] tasklets: Prevent tasklet_unlock_spin_wait() deadlock on RT -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.215-rt107.tar.xz tasklet_unlock_spin_wait() spin waits for the TASKLET_STATE_SCHED bit in the tasklet state to be cleared. This works on !RT nicely because the @@ -28,7 +28,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de> 2 files changed, 29 insertions(+), 11 deletions(-) diff --git a/include/linux/interrupt.h b/include/linux/interrupt.h -index c4fafbfa28a6..6eae70ec3a17 100644 +index c4fafbfa28a6f..6eae70ec3a178 100644 --- a/include/linux/interrupt.h +++ b/include/linux/interrupt.h @@ -658,7 +658,7 @@ enum @@ -59,7 +59,7 @@ index c4fafbfa28a6..6eae70ec3a17 100644 static inline int tasklet_trylock(struct tasklet_struct *t) { return 1; } static inline void tasklet_unlock(struct tasklet_struct *t) { } diff --git a/kernel/softirq.c b/kernel/softirq.c -index ecc3ac4091c8..fcb201ceed71 100644 +index ecc3ac4091c8c..fcb201ceed712 100644 --- a/kernel/softirq.c +++ b/kernel/softirq.c @@ -614,6 +614,32 @@ void tasklet_init(struct tasklet_struct *t, @@ -105,5 +105,5 @@ index ecc3ac4091c8..fcb201ceed71 100644 { smp_mb__before_atomic(); -- -2.43.0 +2.44.0 |