Re: [PATCH v2 16/20] sched: Export hidden tracepoints to modules

From: Steven Rostedt

Date: Fri Sep 19 2025 - 11:36:47 EST


On Fri, 19 Sep 2025 16:09:50 +0200
Gabriele Monaco <gmonaco@xxxxxxxxxx> wrote:

> The tracepoints sched_entry, sched_exit and sched_set_need_resched
> are not exported to tracefs as trace events, this allows only kernel
> code to access them. Helper modules like [1] can be used to still have
> the tracepoints available to ftrace for debugging purposes, but they do
> rely on the tracepoints being exported.
>
> Export the 3 not exported tracepoints.
> Note that sched_set_state is already exported as the macro is called
> from modules.
>
> [1] - https://github.com/qais-yousef/sched_tp.git
>
> Signed-off-by: Gabriele Monaco <gmonaco@xxxxxxxxxx>

Note, for all the scheduler changes, we need an acked-by from the scheduler
maintainers.

After you have acks and are satisfied with the code (hopefully someone else
can review them), you can send me a pull request to be added into linux-next.
I'll still run them through my own tests.

Which BTW, there should be a bunch of tests in:

tools/testing/selftests/verification/

(which doesn't yet exist).

-- Steve


> ---
> kernel/sched/core.c | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/kernel/sched/core.c b/kernel/sched/core.c
> index ccba6fc3c3fe..334ff5b214d7 100644
> --- a/kernel/sched/core.c
> +++ b/kernel/sched/core.c
> @@ -117,6 +117,9 @@ EXPORT_TRACEPOINT_SYMBOL_GPL(sched_util_est_cfs_tp);
> EXPORT_TRACEPOINT_SYMBOL_GPL(sched_util_est_se_tp);
> EXPORT_TRACEPOINT_SYMBOL_GPL(sched_update_nr_running_tp);
> EXPORT_TRACEPOINT_SYMBOL_GPL(sched_compute_energy_tp);
> +EXPORT_TRACEPOINT_SYMBOL_GPL(sched_entry_tp);
> +EXPORT_TRACEPOINT_SYMBOL_GPL(sched_exit_tp);
> +EXPORT_TRACEPOINT_SYMBOL_GPL(sched_set_need_resched_tp);
>
> DEFINE_PER_CPU_SHARED_ALIGNED(struct rq, runqueues);
>