]> git.baikalelectronics.ru Git - kernel.git/commit
sched: Migration changes for core scheduling
authorAubrey Li <aubrey.li@linux.intel.com>
Wed, 24 Mar 2021 21:40:13 +0000 (17:40 -0400)
committerPeter Zijlstra <peterz@infradead.org>
Wed, 12 May 2021 09:43:30 +0000 (11:43 +0200)
commit8d109e3be0f89495c926df6ec0f4be75850a89a3
treeed6c65cd1940ba27a7101a611bc71bdb6029735c
parent97b15c452ca2b61e732016f2795017fbdd621ea1
sched: Migration changes for core scheduling

 - Don't migrate if there is a cookie mismatch
     Load balance tries to move task from busiest CPU to the
     destination CPU. When core scheduling is enabled, if the
     task's cookie does not match with the destination CPU's
     core cookie, this task may be skipped by this CPU. This
     mitigates the forced idle time on the destination CPU.

 - Select cookie matched idle CPU
     In the fast path of task wakeup, select the first cookie matched
     idle CPU instead of the first idle CPU.

 - Find cookie matched idlest CPU
     In the slow path of task wakeup, find the idlest CPU whose core
     cookie matches with task's cookie

Signed-off-by: Aubrey Li <aubrey.li@linux.intel.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Tested-by: Don Hiatt <dhiatt@digitalocean.com>
Tested-by: Hongyu Ning <hongyu.ning@linux.intel.com>
Tested-by: Vincent Guittot <vincent.guittot@linaro.org>
Link: https://lkml.kernel.org/r/20210422123308.860083871@infradead.org
kernel/sched/fair.c
kernel/sched/sched.h