diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c index 2decb431071ebedd0baaa09d2a747000f98bafbb..87dc36f7800d9b6d48c9c9a463b98327a1d7e7b2 100644 --- a/kernel/sched/fair.c +++ b/kernel/sched/fair.c @@ -2046,8 +2046,8 @@ static u64 numa_get_avg_runtime(struct task_struct *p, u64 *period) delta = runtime - p->last_sum_exec_runtime; *period = now - p->last_task_numa_placement; - /* Avoid backward, and prevent potential divide error */ - if ((s64)*period < 0) + /* Avoid time going backwards, prevent potential divide error: */ + if (unlikely((s64)*period < 0)) *period = 0; } else { delta = p->se.avg.load_sum;