From ea1bbc8849a0d6ba05706d3d91b4315a025aba45 Mon Sep 17 00:00:00 2001 From: Greg Kroah-Hartman Date: Fri, 15 Jul 2022 16:15:05 +0200 Subject: [PATCH] 5.4-stable patches added patches: sched-rt-disable-rt_runtime_share-by-default.patch --- ...-disable-rt_runtime_share-by-default.patch | 43 +++++++++++++++++++ queue-5.4/series | 1 + 2 files changed, 44 insertions(+) create mode 100644 queue-5.4/sched-rt-disable-rt_runtime_share-by-default.patch diff --git a/queue-5.4/sched-rt-disable-rt_runtime_share-by-default.patch b/queue-5.4/sched-rt-disable-rt_runtime_share-by-default.patch new file mode 100644 index 00000000000..19994779da0 --- /dev/null +++ b/queue-5.4/sched-rt-disable-rt_runtime_share-by-default.patch @@ -0,0 +1,43 @@ +From 2586af1ac187f6b3a50930a4e33497074e81762d Mon Sep 17 00:00:00 2001 +From: Daniel Bristot de Oliveira +Date: Mon, 21 Sep 2020 16:39:49 +0200 +Subject: sched/rt: Disable RT_RUNTIME_SHARE by default + +From: Daniel Bristot de Oliveira + +commit 2586af1ac187f6b3a50930a4e33497074e81762d upstream. + +The RT_RUNTIME_SHARE sched feature enables the sharing of rt_runtime +between CPUs, allowing a CPU to run a real-time task up to 100% of the +time while leaving more space for non-real-time tasks to run on the CPU +that lend rt_runtime. + +The problem is that a CPU can easily borrow enough rt_runtime to allow +a spinning rt-task to run forever, starving per-cpu tasks like kworkers, +which are non-real-time by design. + +This patch disables RT_RUNTIME_SHARE by default, avoiding this problem. +The feature will still be present for users that want to enable it, +though. + +Signed-off-by: Daniel Bristot de Oliveira +Signed-off-by: Peter Zijlstra (Intel) +Tested-by: Wei Wang +Link: https://lkml.kernel.org/r/b776ab46817e3db5d8ef79175fa0d71073c051c7.1600697903.git.bristot@redhat.com +Signed-off-by: Mark-PK Tsai +Signed-off-by: Greg Kroah-Hartman +--- + kernel/sched/features.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- a/kernel/sched/features.h ++++ b/kernel/sched/features.h +@@ -77,7 +77,7 @@ SCHED_FEAT(WARN_DOUBLE_CLOCK, false) + SCHED_FEAT(RT_PUSH_IPI, true) + #endif + +-SCHED_FEAT(RT_RUNTIME_SHARE, true) ++SCHED_FEAT(RT_RUNTIME_SHARE, false) + SCHED_FEAT(LB_MIN, false) + SCHED_FEAT(ATTACH_AGE_LOAD, true) + diff --git a/queue-5.4/series b/queue-5.4/series index 01449ce4478..53f942114e4 100644 --- a/queue-5.4/series +++ b/queue-5.4/series @@ -14,3 +14,4 @@ cgroup-use-separate-src-dst-nodes-when-preloading-css_sets-for-migration.patch drm-panfrost-fix-shrinker-list-corruption-by-madvise-ioctl.patch nilfs2-fix-incorrect-masking-of-permission-flags-for-symlinks.patch revert-evm-fix-memleak-in-init_desc.patch +sched-rt-disable-rt_runtime_share-by-default.patch -- 2.47.3