Sched_ext development
 help / color / mirror / Atom feed
From: Andrea Righi <arighi@nvidia.com>
To: Cui Jian <cjian720@163.com>
Cc: tj@kernel.org, void@manifault.com, changwoo@igalia.com,
	mingo@redhat.com, peterz@infradead.org, juri.lelli@redhat.com,
	vincent.guittot@linaro.org, dietmar.eggemann@arm.com,
	rostedt@goodmis.org, bsegall@google.com, mgorman@suse.de,
	vschneid@redhat.com, kprateek.nayak@amd.com,
	sched-ext@lists.linux.dev, linux-kernel@vger.kernel.org
Subject: Re: [PATCH] sched_ext:SCX is preemptible by the Fair scheduler
Date: Fri, 12 Jun 2026 20:00:15 +0200	[thread overview]
Message-ID: <aixJL-hdL8LfOA0H@gpd4> (raw)
In-Reply-To: <20260612175113.110447-1-cjian720@163.com>

Hi Cui,

On Sat, Jun 13, 2026 at 01:51:13AM +0800, Cui Jian wrote:
> Hi Andrea,
> 
> While this callback will eventually be deprecated, SCX is still a relatively new scheduling framework. Incomplete preemption reason enums make it difficult to analyze interactions between different schedulers, and filling this gap significantly improves observability for existing SCX workloads.
> 
> This patch does not modify core scheduling logic, introduces zero performance overhead, and adds negligible long-term maintenance cost.

Please, don't re-send a new patch just for this, at least you should add a v2
with a proper changelog. But in this case the discussion can continue in the
previous email thread.

Thanks,
-Andrea

> 
> sched_ext currently distinguishes preemption caused by STOP,
> DL and RT scheduling classes, but preemption from the Fair
> scheduler is reported as SCX_CPU_PREEMPT_UNKNOWN.
> 
> When analyzing SCX scheduling behavior, it is useful to know
> whether a task was preempted by RT/DL classes or switched out
> in favor of a Fair-class task. The lack of a dedicated reason
> makes debugging and observability more difficult.
> 
> Add SCX_CPU_PREEMPT_FAIR and report it when the next scheduled
> task belongs to fair_sched_class.
> 
> This change improves scheduling diagnostics and observability
> without affecting scheduling behavior.
> 
> Signed-off-by: Cui Jian <cjian720@163.com>
> ---
>  kernel/sched/ext.c          | 2 ++
>  kernel/sched/ext_internal.h | 2 ++
>  2 files changed, 4 insertions(+)
> 
> diff --git a/kernel/sched/ext.c b/kernel/sched/ext.c
> index 5d2d19473a82..6e0281218197 100644
> --- a/kernel/sched/ext.c
> +++ b/kernel/sched/ext.c
> @@ -3015,6 +3015,8 @@ preempt_reason_from_class(const struct sched_class *class)
>  		return SCX_CPU_PREEMPT_DL;
>  	if (class == &rt_sched_class)
>  		return SCX_CPU_PREEMPT_RT;
> +	if (class == &fair_sched_class)
> +		return SCX_CPU_PREEMPT_FAIR;
>  	return SCX_CPU_PREEMPT_UNKNOWN;
>  }
>  
> diff --git a/kernel/sched/ext_internal.h b/kernel/sched/ext_internal.h
> index a075732d4430..3ce07bec58a5 100644
> --- a/kernel/sched/ext_internal.h
> +++ b/kernel/sched/ext_internal.h
> @@ -241,6 +241,8 @@ enum scx_cpu_preempt_reason {
>  	SCX_CPU_PREEMPT_DL,
>  	/* next task is being scheduled by &sched_class_stop */
>  	SCX_CPU_PREEMPT_STOP,
> +	/* next task is being scheduled by &sched_class_fair*/
> +	SCX_CPU_PREEMPT_FAIR,
>  	/* unknown reason for SCX being preempted */
>  	SCX_CPU_PREEMPT_UNKNOWN,
>  };
> -- 
> 2.34.1
> 

  reply	other threads:[~2026-06-12 18:00 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-06-12 17:51 [PATCH] sched_ext:SCX is preemptible by the Fair scheduler Cui Jian
2026-06-12 18:00 ` Andrea Righi [this message]
2026-06-12 18:05 ` sashiko-bot
  -- strict thread matches above, loose matches on Subject: below --
2026-06-12 16:14 Cui Jian
2026-06-12 16:28 ` sashiko-bot
2026-06-12 16:32 ` Andrea Righi
2026-06-12 15:23 Cui Jian
2026-06-12 15:38 ` sashiko-bot

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=aixJL-hdL8LfOA0H@gpd4 \
    --to=arighi@nvidia.com \
    --cc=bsegall@google.com \
    --cc=changwoo@igalia.com \
    --cc=cjian720@163.com \
    --cc=dietmar.eggemann@arm.com \
    --cc=juri.lelli@redhat.com \
    --cc=kprateek.nayak@amd.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mgorman@suse.de \
    --cc=mingo@redhat.com \
    --cc=peterz@infradead.org \
    --cc=rostedt@goodmis.org \
    --cc=sched-ext@lists.linux.dev \
    --cc=tj@kernel.org \
    --cc=vincent.guittot@linaro.org \
    --cc=void@manifault.com \
    --cc=vschneid@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox