aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/kernel/sched/sched.h
diff options
context:
space:
mode:
authorAbel Wu <wuyun.abel@bytedance.com>2023-11-15 11:36:45 +0800
committerPeter Zijlstra <peterz@infradead.org>2023-11-15 09:57:47 +0100
commit2227a957e1d5b1941be4e4207879ec74f4bb37f8 (patch)
tree18eb90d421aaed3b3ec423387504eaccc56d44d4 /kernel/sched/sched.h
parentsched/numa: Fix mm numa_scan_seq based unconditional scan (diff)
downloadwireguard-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.h1
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);