sched/fair: Make tick path active migration more robust
When a misfit task is marked for an active migration to a higher
capacity CPU from the tick path, don't allow this task to be
migrated to other CPUs from load balancer. This fixes the problem
described below.
(1) Task-A is running on CPU#0. This task does not fit on CPU#0
(2) Task-A is marked for an active migration to CPU#4 from the
tick path.
(3) migration/0 is woken up on CPU#0 to push the Task-A to CPU#4.
(4) CPU#0 has now two runnable tasks. migration/0 is just scheduled
in.
(5) Before migration/0 actually pushes the task to CPU#4, another
CPU lets say CPU#1 whose capacity is same as CPU#0 is pulling the
Task-A.
(6) The Task-A misses an opportunity for upmigration.
Change-Id: I7cc290f3f475caba73df9e7067b44e690c6f2ed7
Signed-off-by:
Pavankumar Kondeti <pkondeti@codeaurora.org>
Loading
Please register or sign in to comment