2022-08-22 08:03:14

by Ankit Jain

[permalink] [raw]
Subject: [PATCH v5.4.y 0/4] sched/deadline: Fix panic due to nested priority inheritance

When a CFS task that was boosted by a SCHED_DEADLINE
task boosts another CFS task (nested priority inheritance),
Kernel panic is observed.
Fixing priority inheritance changes the way how sched_deadline
attributes are being inherited from original donor task.

Additional supporting patches are added to fix throttling of
boosted tasks.

Daniel Bristot de Oliveira (1):
sched/deadline: Unthrottle PI boosted threads while enqueuing

Lucas Stach (1):
sched/deadline: Fix stale throttling on de-/boosted tasks

Juri Lelli (1):
sched/deadline: Fix priority inheritance with multiple scheduling
classes

Hui Su (1):
kernel/sched: Remove dl_boosted flag comment

include/linux/sched.h | 14 +++--
kernel/sched/core.c | 11 ++--
kernel/sched/deadline.c | 131 +++++++++++++++++++++++++---------------
3 files changed, 97 insertions(+), 59 deletions(-)

--
2.34.1


2022-08-22 08:03:47

by Ankit Jain

[permalink] [raw]
Subject: [PATCH v5.4.y 4/4] kernel/sched: Remove dl_boosted flag comment

From: Hui Su <[email protected]>

commit 0e3872499de1a1230cef5221607d71aa09264bd5 upstream.

since commit 2279f540ea7d ("sched/deadline: Fix priority
inheritance with multiple scheduling classes"), we should not
keep it here.

Signed-off-by: Hui Su <[email protected]>
Signed-off-by: Peter Zijlstra (Intel) <[email protected]>
Reviewed-by: Daniel Bristot de Oliveira <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
[Ankit: Regenerated the patch for v5.4.y]
Signed-off-by: Ankit Jain <[email protected]>
---
include/linux/sched.h | 4 ----
1 file changed, 4 deletions(-)

diff --git a/include/linux/sched.h b/include/linux/sched.h
index b15958388672..d0e639497b10 100644
--- a/include/linux/sched.h
+++ b/include/linux/sched.h
@@ -526,10 +526,6 @@ struct sched_dl_entity {
* task has to wait for a replenishment to be performed at the
* next firing of dl_timer.
*
- * @dl_boosted tells if we are boosted due to DI. If so we are
- * outside bandwidth enforcement mechanism (but only until we
- * exit the critical section);
- *
* @dl_yielded tells if task gave up the CPU before consuming
* all its available runtime during the last job.
*
--
2.34.1