Messages in this thread Patch in this message | | | Date | Sat, 11 May 2024 03:03:03 +0100 | From | Qais Yousef <> | Subject | Re: [PATCH v2] sched: Consolidate cpufreq updates |
| |
On 05/07/24 14:53, Vincent Guittot wrote:
> No I mean going out of idle. On an idle cpu, nothing happens at CFS > task wakeup and we have to wait for the next tick to apply the new > freq. This happens for both short task with uclamp min or long > running/sleeping task (i.e. with high util_est)
I think I found the problem, thanks for catching it!
diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c index cbe79c8ac2ed..dea9383a906e 100644 --- a/kernel/sched/fair.c +++ b/kernel/sched/fair.c @@ -4714,7 +4714,7 @@ static inline void update_load_avg(struct cfs_rq *cfs_rq, struct sched_entity *s if (se->avg.last_update_time && !(flags & SKIP_AGE_LOAD)) __update_load_avg_se(now, cfs_rq, se);
- cfs_rq->decayed = update_cfs_rq_load_avg(now, cfs_rq); + cfs_rq->decayed |= update_cfs_rq_load_avg(now, cfs_rq); cfs_rq->decayed |= propagate_entity_load_avg(se);
if (!se->avg.last_update_time && (flags & DO_ATTACH)) {
| |