Revert "sched/fair: Fixup wake_up_sync() vs DELAYED_DEQUEUE"
This reverts commit a2562bdd35 which is
commit aa3ee4f0b7541382c9f6f43f7408d73a5d4f4042 upstream.
It breaks the Android kernel abi and can be brought back in the future
in an abi-safe way if it is really needed.
Bug: 161946584
Change-Id: I4f679ae99a3ad252f2ff1965c02b26799254911d
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
This commit is contained in:
+2
-11
@@ -7421,11 +7421,6 @@ static bool dequeue_task_fair(struct rq *rq, struct task_struct *p, int flags)
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline unsigned int cfs_h_nr_delayed(struct rq *rq)
|
|
||||||
{
|
|
||||||
return (rq->cfs.h_nr_queued - rq->cfs.h_nr_runnable);
|
|
||||||
}
|
|
||||||
|
|
||||||
#ifdef CONFIG_SMP
|
#ifdef CONFIG_SMP
|
||||||
|
|
||||||
/* Working cpumask for: sched_balance_rq(), sched_balance_newidle(). */
|
/* Working cpumask for: sched_balance_rq(), sched_balance_newidle(). */
|
||||||
@@ -7587,12 +7582,8 @@ wake_affine_idle(int this_cpu, int prev_cpu, int sync)
|
|||||||
if (available_idle_cpu(this_cpu) && cpus_share_cache(this_cpu, prev_cpu))
|
if (available_idle_cpu(this_cpu) && cpus_share_cache(this_cpu, prev_cpu))
|
||||||
return available_idle_cpu(prev_cpu) ? prev_cpu : this_cpu;
|
return available_idle_cpu(prev_cpu) ? prev_cpu : this_cpu;
|
||||||
|
|
||||||
if (sync) {
|
if (sync && cpu_rq(this_cpu)->nr_running == 1)
|
||||||
struct rq *rq = cpu_rq(this_cpu);
|
return this_cpu;
|
||||||
|
|
||||||
if ((rq->nr_running - cfs_h_nr_delayed(rq)) == 1)
|
|
||||||
return this_cpu;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (available_idle_cpu(prev_cpu))
|
if (available_idle_cpu(prev_cpu))
|
||||||
return prev_cpu;
|
return prev_cpu;
|
||||||
|
|||||||
Reference in New Issue
Block a user