diff options
author | 2023-11-15 11:36:45 +0800 | |
---|---|---|
committer | 2023-11-15 09:57:47 +0100 | |
commit | 2227a957e1d5b1941be4e4207879ec74f4bb37f8 (patch) | |
tree | 18eb90d421aaed3b3ec423387504eaccc56d44d4 /kernel/sched/sched.h | |
parent | sched/numa: Fix mm numa_scan_seq based unconditional scan (diff) | |
download | wireguard-linux-2227a957e1d5b1941be4e4207879ec74f4bb37f8.tar.xz wireguard-linux-2227a957e1d5b1941be4e4207879ec74f4bb37f8.zip |
sched/eevdf: Sort the rbtree by virtual deadline
Sort the task timeline by virtual deadline and keep the min_vruntime
in the augmented tree, so we can avoid doubling the worst case cost
and make full use of the cached leftmost node to enable O(1) fastpath
picking in next patch.
Signed-off-by: Abel Wu <wuyun.abel@bytedance.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Link: https://lkml.kernel.org/r/20231115033647.80785-3-wuyun.abel@bytedance.com
Diffstat (limited to 'kernel/sched/sched.h')
-rw-r--r-- | kernel/sched/sched.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/kernel/sched/sched.h b/kernel/sched/sched.h index 2e5a95486a42..539c7e763f15 100644 --- a/kernel/sched/sched.h +++ b/kernel/sched/sched.h @@ -2822,6 +2822,7 @@ DEFINE_LOCK_GUARD_2(double_rq_lock, struct rq, double_rq_lock(_T->lock, _T->lock2), double_rq_unlock(_T->lock, _T->lock2)) +extern struct sched_entity *__pick_root_entity(struct cfs_rq *cfs_rq); extern struct sched_entity *__pick_first_entity(struct cfs_rq *cfs_rq); extern struct sched_entity *__pick_last_entity(struct cfs_rq *cfs_rq); |