Messages in this thread Patch in this message | | | From | Thara Gopinath <> | Subject | [Patch v5 4/6] sched/fair: update cpu_capcity to reflect thermal pressure | Date | Tue, 5 Nov 2019 13:49:44 -0500 |
| |
cpu_capacity relflects the maximum available capacity of a cpu. Thermal pressure on a cpu means this maximum available capacity is reduced. This patch reduces the average thermal pressure for a cpu from its maximum available capacity so that cpu_capacity reflects the actual available capacity.
Other signals that are deducted from cpu_capacity to reflect the actual capacity available are rt and dl util_avg. util_avg tracks a binary signal and uses the weights 1024 and 0. Whereas thermal pressure is tracked using load_avg. load_avg uses the actual "delta" capacity as the weight.
Signed-off-by: Thara Gopinath <thara.gopinath@linaro.org> --- kernel/sched/fair.c | 1 + 1 file changed, 1 insertion(+)
diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c index 9fb0494..5f6c371 100644 --- a/kernel/sched/fair.c +++ b/kernel/sched/fair.c @@ -7738,6 +7738,7 @@ static unsigned long scale_rt_capacity(struct sched_domain *sd, int cpu) used = READ_ONCE(rq->avg_rt.util_avg); used += READ_ONCE(rq->avg_dl.util_avg); + used += READ_ONCE(rq->avg_thermal.load_avg); if (unlikely(used >= max)) return 1; -- 2.1.4
| |