Re: [PATCH v2 4/6] stack_tracer: move sysctl registration to kernel/trace/trace_stack.c

From: Joel Granados
Date: Thu Mar 13 2025 - 12:24:58 EST


On Thu, Mar 06, 2025 at 10:31:38AM -0500, Steven Rostedt wrote:
> On Thu, 06 Mar 2025 12:29:44 +0100
> Joel Granados <joel.granados@xxxxxxxxxx> wrote:
>
> > Move stack_tracer_enabled into trace_stack_sysctl_table. This is part of
> > a greater effort to move ctl tables into their respective subsystems
> > which will reduce the merge conflicts in kerenel/sysctl.c.
> >
> > Signed-off-by: Joel Granados <joel.granados@xxxxxxxxxx>
> > ---
> > kernel/sysctl.c | 10 ----------
> > kernel/trace/trace_stack.c | 20 ++++++++++++++++++++
> > 2 files changed, 20 insertions(+), 10 deletions(-)
> >
> > diff --git a/kernel/sysctl.c b/kernel/sysctl.c
> > index baa250e223a26bafc39cb7a7d7635b4f7f5dcf56..dc3747cc72d470662879e4f2b7f2651505b7ca90 100644
> > --- a/kernel/sysctl.c
> > +++ b/kernel/sysctl.c
> > @@ -68,7 +68,6 @@
> >
> > #ifdef CONFIG_X86
> > #include <asm/nmi.h>
> > -#include <asm/stacktrace.h>
> > #include <asm/io.h>
> > #endif
> > #ifdef CONFIG_SPARC
> > @@ -1674,15 +1673,6 @@ static const struct ctl_table kern_table[] = {
> > .proc_handler = proc_dointvec,
> > },
> > #endif
> > -#ifdef CONFIG_STACK_TRACER
> > - {
> > - .procname = "stack_tracer_enabled",
> > - .data = &stack_tracer_enabled,
> > - .maxlen = sizeof(int),
> > - .mode = 0644,
> > - .proc_handler = stack_trace_sysctl,
> > - },
> > -#endif
> > #ifdef CONFIG_MODULES
> > {
> > .procname = "modprobe",
> > diff --git a/kernel/trace/trace_stack.c b/kernel/trace/trace_stack.c
> > index 14c6f272c4d8a382070d45e1cf0ee97db38831c9..b7ffbc1da8357f9c252cb8936c8f789daa97eb9a 100644
> > --- a/kernel/trace/trace_stack.c
> > +++ b/kernel/trace/trace_stack.c
> > @@ -578,3 +578,23 @@ static __init int stack_trace_init(void)
> > }
> >
> > device_initcall(stack_trace_init);
> > +
> > +
> > +static const struct ctl_table trace_stack_sysctl_table[] = {
> > + {
> > + .procname = "stack_tracer_enabled",
> > + .data = &stack_tracer_enabled,
> > + .maxlen = sizeof(int),
> > + .mode = 0644,
> > + .proc_handler = stack_trace_sysctl,
> > + },
> > +};
> > +
> > +static int __init init_trace_stack_sysctls(void)
> > +{
> > + register_sysctl_init("kernel", trace_stack_sysctl_table);
> > + return 0;
> > +}
> > +subsys_initcall(init_trace_stack_sysctls);
> > +
> > +
> >
>
> This should also make the variable "stack_tracer_enabled" static and
> removed from the ftrace.h header.
oops, my bad. just sent out V3.

Thx
Best

--

Joel Granados