]> 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)
commitbab2a9a7c3352af69aa7c6a23e98df2382bfe01b
treeed6c65cd1940ba27a7101a611bc71bdb6029735c
parentc056585559fe759b638a5b2493833101550017e4
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