From 37cb049ef8b89e97d735f5cf7e34ef3f85ed6d94 Mon Sep 17 00:00:00 2001 From: Tejun Heo Date: Tue, 3 Sep 2024 21:54:29 -1000 Subject: sched_ext: Remove sched_class->switch_class() With sched_ext converted to use put_prev_task() for class switch detection, there's no user of switch_class() left. Drop it. Signed-off-by: Tejun Heo Cc: Peter Zijlstra --- kernel/sched/core.c | 12 +----------- kernel/sched/sched.h | 2 -- 2 files changed, 1 insertion(+), 13 deletions(-) diff --git a/kernel/sched/core.c b/kernel/sched/core.c index 91bedf5d9f89..df56301bfa97 100644 --- a/kernel/sched/core.c +++ b/kernel/sched/core.c @@ -5965,22 +5965,12 @@ restart: for_each_active_class(class) { if (class->pick_next_task) { p = class->pick_next_task(rq, prev); - if (p) { - const struct sched_class *prev_class = prev->sched_class; - - if (class != prev_class && prev_class->switch_class) - prev_class->switch_class(rq, p); + if (p) return p; - } } else { p = class->pick_task(rq); if (p) { - const struct sched_class *prev_class = prev->sched_class; - put_prev_set_next_task(rq, prev, p); - - if (class != prev_class && prev_class->switch_class) - prev_class->switch_class(rq, p); return p; } } diff --git a/kernel/sched/sched.h b/kernel/sched/sched.h index 477e7a861d10..73ba0cfe4226 100644 --- a/kernel/sched/sched.h +++ b/kernel/sched/sched.h @@ -2385,8 +2385,6 @@ struct sched_class { void (*put_prev_task)(struct rq *rq, struct task_struct *p, struct task_struct *next); void (*set_next_task)(struct rq *rq, struct task_struct *p, bool first); - void (*switch_class)(struct rq *rq, struct task_struct *next); - #ifdef CONFIG_SMP int (*select_task_rq)(struct task_struct *p, int task_cpu, int flags); -- cgit