Revert "sched/cputime: Fix steal time accounting vs. CPU hotplug"

This reverts commit 2a8225ef46
("sched/cputime: Fix steal time accounting vs. CPU hotplug").

The commit introduces a bug in scheduler book-keeping whereby if a CPU
is hotplugged out for a small duration of time, subsequent time spent
executing tasks gets mis-attributed to interrupts. This in turn results
in unfair scheduling whereby a task can keep executing for a very long
time without any update to it's vruntime. This revert has no side
effects for msm based systems.

Change-Id: Ibb506824c4223551bceb449594ac99f9dfd8064b
Signed-off-by: Syed Rameez Mustafa <rameezmustafa@codeaurora.org>
This commit is contained in:
Syed Rameez Mustafa 2016-12-13 16:50:58 -08:00
parent a80e267a8c
commit 3366a508ff
2 changed files with 0 additions and 14 deletions

View file

@ -6066,7 +6066,6 @@ migration_call(struct notifier_block *nfb, unsigned long action, void *hcpu)
set_window_start(rq); set_window_start(rq);
raw_spin_unlock_irqrestore(&rq->lock, flags); raw_spin_unlock_irqrestore(&rq->lock, flags);
rq->calc_load_update = calc_load_update; rq->calc_load_update = calc_load_update;
account_reset_rq(rq);
break; break;
case CPU_ONLINE: case CPU_ONLINE:

View file

@ -2534,16 +2534,3 @@ static inline u64 irq_time_read(int cpu)
} }
#endif /* CONFIG_64BIT */ #endif /* CONFIG_64BIT */
#endif /* CONFIG_IRQ_TIME_ACCOUNTING */ #endif /* CONFIG_IRQ_TIME_ACCOUNTING */
static inline void account_reset_rq(struct rq *rq)
{
#ifdef CONFIG_IRQ_TIME_ACCOUNTING
rq->prev_irq_time = 0;
#endif
#ifdef CONFIG_PARAVIRT
rq->prev_steal_time = 0;
#endif
#ifdef CONFIG_PARAVIRT_TIME_ACCOUNTING
rq->prev_steal_time_rq = 0;
#endif
}