diff options
author | Xie XiuQi <[email protected]> | 2019-04-20 16:34:16 +0800 |
---|---|---|
committer | Ingo Molnar <[email protected]> | 2019-04-25 19:58:54 +0200 |
commit | a860fa7b96e1a1c974556327aa1aee852d434c21 (patch) | |
tree | 242bb6433d229e091cc9f75d775bdc43e1b0b026 /tools/perf/scripts/python/exported-sql-viewer.py | |
parent | cd8dead0c39457e58ec1d36db93aedca811d48f1 (diff) |
sched/numa: Fix a possible divide-by-zero
sched_clock_cpu() may not be consistent between CPUs. If a task
migrates to another CPU, then se.exec_start is set to that CPU's
rq_clock_task() by update_stats_curr_start(). Specifically, the new
value might be before the old value due to clock skew.
So then if in numa_get_avg_runtime() the expression:
'now - p->last_task_numa_placement'
ends up as -1, then the divider '*period + 1' in task_numa_placement()
is 0 and things go bang. Similar to update_curr(), check if time goes
backwards to avoid this.
[ peterz: Wrote new changelog. ]
[ mingo: Tweaked the code comment. ]
Signed-off-by: Xie XiuQi <[email protected]>
Signed-off-by: Peter Zijlstra (Intel) <[email protected]>
Cc: Linus Torvalds <[email protected]>
Cc: Peter Zijlstra <[email protected]>
Cc: Thomas Gleixner <[email protected]>
Cc: [email protected]
Cc: <[email protected]>
Link: http://lkml.kernel.org/r/[email protected]
Signed-off-by: Ingo Molnar <[email protected]>
Diffstat (limited to 'tools/perf/scripts/python/exported-sql-viewer.py')
0 files changed, 0 insertions, 0 deletions