kernel/sched/core.c | 1 + 1 file changed, 1 insertion(+)
Commit adcc3bfa8806 ("sched: Adapt sched tracepoints for RV task model")
added a tracepoint to the need_resched action that can be triggered also
by set_tsk_need_resched.
This function was previously accessible from out-of-tree modules but
it's no longer available because the __trace_set_need_resched() symbol
is not exported (together with the tracepoint itself, which was exported
in a separate patch) and building such modules fails.
Export __trace_set_need_resched to modules to fix those build issues.
Fixes: adcc3bfa8806 ("sched: Adapt sched tracepoints for RV task model")
Cc: Phil Auld <pauld@redhat.com>
Signed-off-by: Gabriele Monaco <gmonaco@redhat.com>
---
kernel/sched/core.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/kernel/sched/core.c b/kernel/sched/core.c
index 60afadb6eede..a490d34cc65a 100644
--- a/kernel/sched/core.c
+++ b/kernel/sched/core.c
@@ -1136,6 +1136,7 @@ void __trace_set_need_resched(struct task_struct *curr, int tif)
{
trace_sched_set_need_resched_tp(curr, smp_processor_id(), tif);
}
+EXPORT_SYMBOL_GPL(__trace_set_need_resched);
void resched_curr(struct rq *rq)
{
base-commit: 0f61b1860cc3f52aef9036d7235ed1f017632193
--
2.52.0
On Mon, Jan 12, 2026 at 03:04:13PM +0100 Gabriele Monaco wrote:
> Commit adcc3bfa8806 ("sched: Adapt sched tracepoints for RV task model")
> added a tracepoint to the need_resched action that can be triggered also
> by set_tsk_need_resched.
> This function was previously accessible from out-of-tree modules but
> it's no longer available because the __trace_set_need_resched() symbol
> is not exported (together with the tracepoint itself, which was exported
> in a separate patch) and building such modules fails.
>
> Export __trace_set_need_resched to modules to fix those build issues.
>
> Fixes: adcc3bfa8806 ("sched: Adapt sched tracepoints for RV task model")
> Cc: Phil Auld <pauld@redhat.com>
> Signed-off-by: Gabriele Monaco <gmonaco@redhat.com>
> ---
> kernel/sched/core.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/kernel/sched/core.c b/kernel/sched/core.c
> index 60afadb6eede..a490d34cc65a 100644
> --- a/kernel/sched/core.c
> +++ b/kernel/sched/core.c
> @@ -1136,6 +1136,7 @@ void __trace_set_need_resched(struct task_struct *curr, int tif)
> {
> trace_sched_set_need_resched_tp(curr, smp_processor_id(), tif);
> }
> +EXPORT_SYMBOL_GPL(__trace_set_need_resched);
>
> void resched_curr(struct rq *rq)
> {
>
> base-commit: 0f61b1860cc3f52aef9036d7235ed1f017632193
> --
> 2.52.0
>
Thanks Gabriele! And good catch that the other patch is not sufficient.
Reviewed-by: Phil Auld <pauld@redhat.com>
--
The following commit has been merged into the sched/core branch of tip:
Commit-ID: 8d737320166bd145af70a3133a9964b00ca81cba
Gitweb: https://git.kernel.org/tip/8d737320166bd145af70a3133a9964b00ca81cba
Author: Gabriele Monaco <gmonaco@redhat.com>
AuthorDate: Mon, 12 Jan 2026 15:04:13 +01:00
Committer: Peter Zijlstra <peterz@infradead.org>
CommitterDate: Thu, 15 Jan 2026 22:41:26 +01:00
sched: Fix build for modules using set_tsk_need_resched()
Commit adcc3bfa8806 ("sched: Adapt sched tracepoints for RV task model")
added a tracepoint to the need_resched action that can be triggered also
by set_tsk_need_resched.
This function was previously accessible from out-of-tree modules but
it's no longer available because the __trace_set_need_resched() symbol
is not exported (together with the tracepoint itself, which was exported
in a separate patch) and building such modules fails.
Export __trace_set_need_resched to modules to fix those build issues.
Fixes: adcc3bfa8806 ("sched: Adapt sched tracepoints for RV task model")
Signed-off-by: Gabriele Monaco <gmonaco@redhat.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Reviewed-by: Phil Auld <pauld@redhat.com>
Link: https://patch.msgid.link/20260112140413.362202-1-gmonaco@redhat.com
---
kernel/sched/core.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/kernel/sched/core.c b/kernel/sched/core.c
index b033f97..3cca012 100644
--- a/kernel/sched/core.c
+++ b/kernel/sched/core.c
@@ -1139,6 +1139,7 @@ void __trace_set_need_resched(struct task_struct *curr, int tif)
{
trace_sched_set_need_resched_tp(curr, smp_processor_id(), tif);
}
+EXPORT_SYMBOL_GPL(__trace_set_need_resched);
void resched_curr(struct rq *rq)
{
On Thu, Jan 15, 2026 at 09:44:19PM -0000 tip-bot2 for Gabriele Monaco wrote:
> The following commit has been merged into the sched/core branch of tip:
>
> Commit-ID: 8d737320166bd145af70a3133a9964b00ca81cba
> Gitweb: https://git.kernel.org/tip/8d737320166bd145af70a3133a9964b00ca81cba
> Author: Gabriele Monaco <gmonaco@redhat.com>
> AuthorDate: Mon, 12 Jan 2026 15:04:13 +01:00
> Committer: Peter Zijlstra <peterz@infradead.org>
> CommitterDate: Thu, 15 Jan 2026 22:41:26 +01:00
>
Thank you for both of these, Peter!
Cheers,
Phil
> sched: Fix build for modules using set_tsk_need_resched()
>
> Commit adcc3bfa8806 ("sched: Adapt sched tracepoints for RV task model")
> added a tracepoint to the need_resched action that can be triggered also
> by set_tsk_need_resched.
> This function was previously accessible from out-of-tree modules but
> it's no longer available because the __trace_set_need_resched() symbol
> is not exported (together with the tracepoint itself, which was exported
> in a separate patch) and building such modules fails.
>
> Export __trace_set_need_resched to modules to fix those build issues.
>
> Fixes: adcc3bfa8806 ("sched: Adapt sched tracepoints for RV task model")
> Signed-off-by: Gabriele Monaco <gmonaco@redhat.com>
> Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
> Reviewed-by: Phil Auld <pauld@redhat.com>
> Link: https://patch.msgid.link/20260112140413.362202-1-gmonaco@redhat.com
> ---
> kernel/sched/core.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/kernel/sched/core.c b/kernel/sched/core.c
> index b033f97..3cca012 100644
> --- a/kernel/sched/core.c
> +++ b/kernel/sched/core.c
> @@ -1139,6 +1139,7 @@ void __trace_set_need_resched(struct task_struct *curr, int tif)
> {
> trace_sched_set_need_resched_tp(curr, smp_processor_id(), tif);
> }
> +EXPORT_SYMBOL_GPL(__trace_set_need_resched);
>
> void resched_curr(struct rq *rq)
> {
>
--
Hi Peter and Gabriele,
On Thu, Jan 15, 2026 at 06:38:03PM -0500 Phil Auld wrote:
> On Thu, Jan 15, 2026 at 09:44:19PM -0000 tip-bot2 for Gabriele Monaco wrote:
> > The following commit has been merged into the sched/core branch of tip:
> >
> > Commit-ID: 8d737320166bd145af70a3133a9964b00ca81cba
> > Gitweb: https://git.kernel.org/tip/8d737320166bd145af70a3133a9964b00ca81cba
> > Author: Gabriele Monaco <gmonaco@redhat.com>
> > AuthorDate: Mon, 12 Jan 2026 15:04:13 +01:00
> > Committer: Peter Zijlstra <peterz@infradead.org>
> > CommitterDate: Thu, 15 Jan 2026 22:41:26 +01:00
> >
>
> Thank you for both of these, Peter!
Well, I think this one and the related one need to lose the _GPL because
they are called from things, like wake_up_process(), which are exported
without that restriction. This essentially adds _GPL to that and
anything else that ends up in resched_curr().
I prefer to add new symbols _GPL too but this case seems different.
Thoughts?
I can spin up a patch against tip:sched/core if you want it.
Cheers,
Phil
>
> > sched: Fix build for modules using set_tsk_need_resched()
> >
> > Commit adcc3bfa8806 ("sched: Adapt sched tracepoints for RV task model")
> > added a tracepoint to the need_resched action that can be triggered also
> > by set_tsk_need_resched.
> > This function was previously accessible from out-of-tree modules but
> > it's no longer available because the __trace_set_need_resched() symbol
> > is not exported (together with the tracepoint itself, which was exported
> > in a separate patch) and building such modules fails.
> >
> > Export __trace_set_need_resched to modules to fix those build issues.
> >
> > Fixes: adcc3bfa8806 ("sched: Adapt sched tracepoints for RV task model")
> > Signed-off-by: Gabriele Monaco <gmonaco@redhat.com>
> > Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
> > Reviewed-by: Phil Auld <pauld@redhat.com>
> > Link: https://patch.msgid.link/20260112140413.362202-1-gmonaco@redhat.com
> > ---
> > kernel/sched/core.c | 1 +
> > 1 file changed, 1 insertion(+)
> >
> > diff --git a/kernel/sched/core.c b/kernel/sched/core.c
> > index b033f97..3cca012 100644
> > --- a/kernel/sched/core.c
> > +++ b/kernel/sched/core.c
> > @@ -1139,6 +1139,7 @@ void __trace_set_need_resched(struct task_struct *curr, int tif)
> > {
> > trace_sched_set_need_resched_tp(curr, smp_processor_id(), tif);
> > }
> > +EXPORT_SYMBOL_GPL(__trace_set_need_resched);
> >
> > void resched_curr(struct rq *rq)
> > {
> >
>
> --
>
--
© 2016 - 2026 Red Hat, Inc.