summaryrefslogtreecommitdiff
path: root/kernel/sched/ext/ext.c
diff options
context:
space:
mode:
authorMark Brown <broonie@kernel.org>2026-09-30 13:15:48 +0100
committerMark Brown <broonie@kernel.org>2026-09-30 13:15:48 +0100
commit24bf019cbe7e44d1e933480933b8410886bf4c60 (patch)
tree68ba5a2536df9ec6d93b3f524b60b53011988d08 /kernel/sched/ext/ext.c
parentd366f5b1dbc9ab26c4575690274dd8f6412805b0 (diff)
parent1aeb52f7869a680c042fc9ae806281e8f60469f7 (diff)
downloadlinux-next-24bf019cbe7e44d1e933480933b8410886bf4c60.tar.gz
linux-next-24bf019cbe7e44d1e933480933b8410886bf4c60.zip
Merge branch 'master' of https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git
# Conflicts: # Documentation/scheduler/index.rst # arch/arm64/configs/defconfig
Diffstat (limited to 'kernel/sched/ext/ext.c')
-rw-r--r--kernel/sched/ext/ext.c18
1 files changed, 17 insertions, 1 deletions
diff --git a/kernel/sched/ext/ext.c b/kernel/sched/ext/ext.c
index e56c3c95018f..aed5286b82aa 100644
--- a/kernel/sched/ext/ext.c
+++ b/kernel/sched/ext/ext.c
@@ -24,6 +24,11 @@
DEFINE_RAW_SPINLOCK(scx_sched_lock);
+bool scx_allow_proxy_exec(const struct task_struct *p)
+{
+ return true;
+}
+
/*
* NOTE: sched_ext is in the process of growing multiple scheduler support and
* scx_root usage is in a transitional state. Naked dereferences are safe if the
@@ -1087,6 +1092,10 @@ static void schedule_deferred_locked(struct rq *rq)
schedule_deferred(rq);
}
+void scx_proxy_reenqueue_retry(struct rq *rq, struct task_struct *next)
+{
+}
+
void schedule_dsq_reenq(struct scx_sched *sch, struct scx_dispatch_q *dsq,
u64 reenq_flags, struct rq *locked_rq)
{
@@ -3021,10 +3030,13 @@ has_tasks:
return verdict;
}
-static void set_next_task_scx(struct rq *rq, struct task_struct *p, bool first)
+static void set_next_task_scx(struct rq *rq, struct task_struct *p, enum snt_e type)
{
struct scx_sched *sch = scx_task_sched(p);
+ if (type == SNT_REPICK)
+ return;
+
if (p->scx.flags & SCX_TASK_QUEUED) {
/*
* Core-sched might decide to execute @p before it is
@@ -3082,6 +3094,10 @@ static void set_next_task_scx(struct rq *rq, struct task_struct *p, bool first)
}
}
+void scx_proxy_donor_start(struct rq *rq)
+{
+}
+
static enum scx_cpu_preempt_reason
preempt_reason_from_class(const struct sched_class *class)
{