aboutsummaryrefslogtreecommitdiff
path: root/SOURCES/scx-kernel.patch
diff options
context:
space:
mode:
authorJan200101 <sentrycraft123@gmail.com>2024-10-06 00:05:44 +0200
committerJan200101 <sentrycraft123@gmail.com>2024-10-06 00:05:44 +0200
commit2bc81be55c381d2bfd0543f36c4eafd8517c8972 (patch)
tree00ce8bc78e8e5bbdc8e56cacfbec333b86a1b692 /SOURCES/scx-kernel.patch
parentbfc36f8fbe1fe4b58215e39b503569ef48ffec79 (diff)
downloadkernel-fsync-2bc81be55c381d2bfd0543f36c4eafd8517c8972.tar.gz
kernel-fsync-2bc81be55c381d2bfd0543f36c4eafd8517c8972.zip
kernel 6.10.136.10
Diffstat (limited to 'SOURCES/scx-kernel.patch')
-rw-r--r--SOURCES/scx-kernel.patch17
1 files changed, 9 insertions, 8 deletions
diff --git a/SOURCES/scx-kernel.patch b/SOURCES/scx-kernel.patch
index 5bf5505..29e1f22 100644
--- a/SOURCES/scx-kernel.patch
+++ b/SOURCES/scx-kernel.patch
@@ -8106,16 +8106,16 @@ index 483c137b9d3d..ab17954001ae 100644
{
struct sched_entity *se = &p->se;
struct cfs_rq *cfs_rq = cfs_rq_of(se);
-@@ -8390,7 +8391,7 @@ static void check_preempt_wakeup_fair(struct rq *rq, struct task_struct *p, int
- * Batch and idle tasks do not preempt non-idle tasks (their preemption
- * is driven by the tick):
+@@ -8697,7 +8697,7 @@
+ /*
+ * BATCH and IDLE tasks do not preempt others.
*/
-- if (unlikely(p->policy != SCHED_NORMAL) || !sched_feat(WAKEUP_PREEMPTION))
-+ if (unlikely(!normal_policy(p->policy)) || !sched_feat(WAKEUP_PREEMPTION))
+- if (unlikely(p->policy != SCHED_NORMAL))
++ if (unlikely(!normal_policy(p->policy)))
return;
- find_matching_se(&se, &pse);
-@@ -9347,28 +9348,18 @@ static inline void update_blocked_load_status(struct rq *rq, bool has_blocked) {
+ cfs_rq = cfs_rq_of(se);
+@@ -9647,29 +9647,18 @@
static bool __update_blocked_others(struct rq *rq, bool *done)
{
@@ -8133,9 +8133,10 @@ index 483c137b9d3d..ab17954001ae 100644
-
- hw_pressure = arch_scale_hw_pressure(cpu_of(rq));
-
+- /* hw_pressure doesn't care about invariance */
- decayed = update_rt_rq_load_avg(now, rq, curr_class == &rt_sched_class) |
- update_dl_rq_load_avg(now, rq, curr_class == &dl_sched_class) |
-- update_hw_load_avg(now, rq, hw_pressure) |
+- update_hw_load_avg(rq_clock_task(rq), rq, hw_pressure) |
- update_irq_load_avg(rq, 0);
+ updated = update_other_load_avgs(rq);