Loading kernel/sched/core.c +1 −0 Original line number Diff line number Diff line Loading @@ -8104,6 +8104,7 @@ int sched_cpu_starting(unsigned int cpu) { set_cpu_rq_start_time(cpu); sched_rq_cpu_starting(cpu); clear_walt_request(cpu); return 0; } Loading kernel/sched/fair.c +2 −1 Original line number Diff line number Diff line Loading @@ -3939,7 +3939,8 @@ pick_next_entity(struct cfs_rq *cfs_rq, struct sched_entity *curr) second = curr; } if (second && wakeup_preempt_entity(second, left) < 1) if (second && (sched_feat(STRICT_SKIP_BUDDY) || wakeup_preempt_entity(second, left) < 1)) se = second; } Loading kernel/sched/features.h +6 −0 Original line number Diff line number Diff line Loading @@ -25,6 +25,12 @@ SCHED_FEAT(NEXT_BUDDY, false) */ SCHED_FEAT(LAST_BUDDY, true) /* * skip buddy i.e task called yield() is always skipped and the * next entity is selected to run irrespective of the vruntime */ SCHED_FEAT(STRICT_SKIP_BUDDY, true) /* * Consider buddies to be cache hot, decreases the likelyness of a * cache buddy being migrated away, increases cache locality. Loading Loading
kernel/sched/core.c +1 −0 Original line number Diff line number Diff line Loading @@ -8104,6 +8104,7 @@ int sched_cpu_starting(unsigned int cpu) { set_cpu_rq_start_time(cpu); sched_rq_cpu_starting(cpu); clear_walt_request(cpu); return 0; } Loading
kernel/sched/fair.c +2 −1 Original line number Diff line number Diff line Loading @@ -3939,7 +3939,8 @@ pick_next_entity(struct cfs_rq *cfs_rq, struct sched_entity *curr) second = curr; } if (second && wakeup_preempt_entity(second, left) < 1) if (second && (sched_feat(STRICT_SKIP_BUDDY) || wakeup_preempt_entity(second, left) < 1)) se = second; } Loading
kernel/sched/features.h +6 −0 Original line number Diff line number Diff line Loading @@ -25,6 +25,12 @@ SCHED_FEAT(NEXT_BUDDY, false) */ SCHED_FEAT(LAST_BUDDY, true) /* * skip buddy i.e task called yield() is always skipped and the * next entity is selected to run irrespective of the vruntime */ SCHED_FEAT(STRICT_SKIP_BUDDY, true) /* * Consider buddies to be cache hot, decreases the likelyness of a * cache buddy being migrated away, increases cache locality. Loading