lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250303204455.69723c20@gandalf.local.home>
Date: Mon, 3 Mar 2025 20:44:55 -0500
From: Steven Rostedt <rostedt@...dmis.org>
To: Joel Granados <joel.granados@...nel.org>
Cc: Kees Cook <kees@...nel.org>, Masami Hiramatsu <mhiramat@...nel.org>,
 Mark Rutland <mark.rutland@....com>, Mathieu Desnoyers
 <mathieu.desnoyers@...icios.com>, Peter Zijlstra <peterz@...radead.org>,
 Ingo Molnar <mingo@...hat.com>, Arnaldo Carvalho de Melo <acme@...nel.org>,
 Namhyung Kim <namhyung@...nel.org>, Alexander Shishkin
 <alexander.shishkin@...ux.intel.com>, Jiri Olsa <jolsa@...nel.org>, Ian
 Rogers <irogers@...gle.com>, Adrian Hunter <adrian.hunter@...el.com>,
 "Liang, Kan" <kan.liang@...ux.intel.com>, "David S. Miller"
 <davem@...emloft.net>, Andreas Larsson <andreas@...sler.com>, Heiko
 Carstens <hca@...ux.ibm.com>, Vasily Gorbik <gor@...ux.ibm.com>, Alexander
 Gordeev <agordeev@...ux.ibm.com>, Christian Borntraeger
 <borntraeger@...ux.ibm.com>, Sven Schnelle <svens@...ux.ibm.com>, Gerald
 Schaefer <gerald.schaefer@...ux.ibm.com>, Thomas Gleixner
 <tglx@...utronix.de>, Borislav Petkov <bp@...en8.de>, Dave Hansen
 <dave.hansen@...ux.intel.com>, x86@...nel.org, "H. Peter Anvin"
 <hpa@...or.com>, "Rafael J. Wysocki" <rafael@...nel.org>, Len Brown
 <lenb@...nel.org>, linux-kernel@...r.kernel.org,
 linux-fsdevel@...r.kernel.org, linux-trace-kernel@...r.kernel.org,
 linux-perf-users@...r.kernel.org, sparclinux@...r.kernel.org,
 linux-s390@...r.kernel.org, linux-acpi@...r.kernel.org
Subject: Re: [PATCH 3/8] ftrace: Move trace sysctls into trace.c

On Tue, 18 Feb 2025 10:56:19 +0100
Joel Granados <joel.granados@...nel.org> wrote:

Nit, change the subject to:

  tracing: Move trace sysctls into trace.c

as I try to only have the "ftrace:" label for modifications that affect
attaching to functions, and "tracing:" for everything else.

Acked-by: Steven Rostedt (Google) <rostedt@...dmis.org>

-- Steve


> Move trace ctl tables into their own const array in
> kernel/trace/trace.c. The sysctl table register is called with
> subsys_initcall placing if after its original place in proc_root_init.
> 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@...nel.org>
> ---
>  include/linux/ftrace.h |  7 -------
>  kernel/sysctl.c        | 24 ------------------------
>  kernel/trace/trace.c   | 36 +++++++++++++++++++++++++++++++++++-
>  3 files changed, 35 insertions(+), 32 deletions(-)
> 
> diff --git a/include/linux/ftrace.h b/include/linux/ftrace.h
> index fbabc3d848b3..59774513ae45 100644
> --- a/include/linux/ftrace.h
> +++ b/include/linux/ftrace.h
> @@ -1298,16 +1298,9 @@ static inline void unpause_graph_tracing(void) { }
>  #ifdef CONFIG_TRACING
>  enum ftrace_dump_mode;
>  
> -#define MAX_TRACER_SIZE		100
> -extern char ftrace_dump_on_oops[];
>  extern int ftrace_dump_on_oops_enabled(void);
> -extern int tracepoint_printk;
>  
>  extern void disable_trace_on_warning(void);
> -extern int __disable_trace_on_warning;
> -
> -int tracepoint_printk_sysctl(const struct ctl_table *table, int write,
> -			     void *buffer, size_t *lenp, loff_t *ppos);
>  
>  #else /* CONFIG_TRACING */
>  static inline void  disable_trace_on_warning(void) { }
> diff --git a/kernel/sysctl.c b/kernel/sysctl.c
> index 6514c13800a4..baa250e223a2 100644
> --- a/kernel/sysctl.c
> +++ b/kernel/sysctl.c
> @@ -51,7 +51,6 @@
>  #include <linux/nfs_fs.h>
>  #include <linux/acpi.h>
>  #include <linux/reboot.h>
> -#include <linux/ftrace.h>
>  #include <linux/perf_event.h>
>  #include <linux/oom.h>
>  #include <linux/kmod.h>
> @@ -1684,29 +1683,6 @@ static const struct ctl_table kern_table[] = {
>  		.proc_handler	= stack_trace_sysctl,
>  	},
>  #endif
> -#ifdef CONFIG_TRACING
> -	{
> -		.procname	= "ftrace_dump_on_oops",
> -		.data		= &ftrace_dump_on_oops,
> -		.maxlen		= MAX_TRACER_SIZE,
> -		.mode		= 0644,
> -		.proc_handler	= proc_dostring,
> -	},
> -	{
> -		.procname	= "traceoff_on_warning",
> -		.data		= &__disable_trace_on_warning,
> -		.maxlen		= sizeof(__disable_trace_on_warning),
> -		.mode		= 0644,
> -		.proc_handler	= proc_dointvec,
> -	},
> -	{
> -		.procname	= "tracepoint_printk",
> -		.data		= &tracepoint_printk,
> -		.maxlen		= sizeof(tracepoint_printk),
> -		.mode		= 0644,
> -		.proc_handler	= tracepoint_printk_sysctl,
> -	},
> -#endif
>  #ifdef CONFIG_MODULES
>  	{
>  		.procname	= "modprobe",
> diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c
> index 0e6d517e74e0..abfc0e56173b 100644
> --- a/kernel/trace/trace.c
> +++ b/kernel/trace/trace.c
> @@ -117,6 +117,7 @@ static int tracing_disabled = 1;
>  
>  cpumask_var_t __read_mostly	tracing_buffer_mask;
>  
> +#define MAX_TRACER_SIZE		100
>  /*
>   * ftrace_dump_on_oops - variable to dump ftrace buffer on oops
>   *
> @@ -139,7 +140,40 @@ cpumask_var_t __read_mostly	tracing_buffer_mask;
>  char ftrace_dump_on_oops[MAX_TRACER_SIZE] = "0";
>  
>  /* When set, tracing will stop when a WARN*() is hit */
> -int __disable_trace_on_warning;
> +static int __disable_trace_on_warning;
> +
> +int tracepoint_printk_sysctl(const struct ctl_table *table, int write,
> +			     void *buffer, size_t *lenp, loff_t *ppos);
> +static const struct ctl_table trace_sysctl_table[] = {
> +	{
> +		.procname	= "ftrace_dump_on_oops",
> +		.data		= &ftrace_dump_on_oops,
> +		.maxlen		= MAX_TRACER_SIZE,
> +		.mode		= 0644,
> +		.proc_handler	= proc_dostring,
> +	},
> +	{
> +		.procname	= "traceoff_on_warning",
> +		.data		= &__disable_trace_on_warning,
> +		.maxlen		= sizeof(__disable_trace_on_warning),
> +		.mode		= 0644,
> +		.proc_handler	= proc_dointvec,
> +	},
> +	{
> +		.procname	= "tracepoint_printk",
> +		.data		= &tracepoint_printk,
> +		.maxlen		= sizeof(tracepoint_printk),
> +		.mode		= 0644,
> +		.proc_handler	= tracepoint_printk_sysctl,
> +	},
> +};
> +
> +static int __init init_trace_sysctls(void)
> +{
> +	register_sysctl_init("kernel", trace_sysctl_table);
> +	return 0;
> +}
> +subsys_initcall(init_trace_sysctls);
>  
>  #ifdef CONFIG_TRACE_EVAL_MAP_FILE
>  /* Map of enums to their values, for "eval_map" file */
> 


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ