Re: [RFC PATCH 0/4] sched: Improve cpu load accounting with nohz

From: Dietmar Eggemann
Date: Thu Jan 14 2016 - 17:27:46 EST


On 01/14/2016 09:27 PM, Peter Zijlstra wrote:
On Thu, Jan 14, 2016 at 09:19:00PM +0000, Dietmar Eggemann wrote:
@@ -4346,7 +4346,10 @@ static void __update_cpu_load(struct rq *this_rq, unsigned long this_load,

/* scale is effectively 1 << i now, and >> i divides by scale */

- old_load = this_rq->cpu_load[i] - tickless_load;
+ if (this_rq->cpu_load[i] > tickless_load)
+ old_load = this_rq->cpu_load[i] - tickless_load;
+ else
+ old_load = 0;

Yeah, yuck. That'd go bad quick.


... because I set it to 0? But after the decay function we add
tickless_load to old_load. Maybe in case tickless_load >
this_rq->cpu_load[i] we decay this_rq->cpu_load[i] and do not add
tickless_load afterwards.


IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.