* [PATCH] tracing: fix build without CONFIG_MODULES
@ 2025-03-14 15:50 Arnd Bergmann
2025-03-21 16:35 ` Steven Rostedt
0 siblings, 1 reply; 2+ messages in thread
From: Arnd Bergmann @ 2025-03-14 15:50 UTC (permalink / raw)
To: Steven Rostedt, Masami Hiramatsu
Cc: Arnd Bergmann, Mathieu Desnoyers, Vincent Donnefort, Huang Yiwei,
linux-kernel, linux-trace-kernel
From: Arnd Bergmann <arnd@arndb.de>
The tracing code fails to build when CONFIG_MODULES is disabled:
kernel/trace/trace.c: In function 'save_mod':
kernel/trace/trace.c:6041:45: error: invalid use of undefined type 'struct module'
6041 | entry->mod_addr = (unsigned long)mod->mem[MOD_TEXT].base;
| ^~
The problem here is that 'struct module' is not defined in this configuration.
Enclose the functions in another #ifdef, just like other parts of this file
already are.
Fixes: dca91c1c5468 ("tracing: Have persistent trace instances save module addresses")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
kernel/trace/trace.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c
index a6105b6dcc2b..51c030b9887e 100644
--- a/kernel/trace/trace.c
+++ b/kernel/trace/trace.c
@@ -6019,6 +6019,7 @@ struct trace_scratch {
static DEFINE_MUTEX(scratch_mutex);
+#ifdef CONFIG_MODULES
static int save_mod(struct module *mod, void *data)
{
struct trace_array *tr = data;
@@ -6043,6 +6044,7 @@ static int save_mod(struct module *mod, void *data)
return 0;
}
+#endif
static void update_last_data(struct trace_array *tr)
{
@@ -6060,7 +6062,9 @@ static void update_last_data(struct trace_array *tr)
tscratch->nr_entries = 0;
guard(mutex)(&scratch_mutex);
+#ifdef CONFIG_MODULES
module_for_each_mod(save_mod, tr);
+#endif
}
if (!(tr->flags & TRACE_ARRAY_FL_LAST_BOOT))
--
2.39.5
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH] tracing: fix build without CONFIG_MODULES
2025-03-14 15:50 [PATCH] tracing: fix build without CONFIG_MODULES Arnd Bergmann
@ 2025-03-21 16:35 ` Steven Rostedt
0 siblings, 0 replies; 2+ messages in thread
From: Steven Rostedt @ 2025-03-21 16:35 UTC (permalink / raw)
To: Arnd Bergmann
Cc: Masami Hiramatsu, Arnd Bergmann, Mathieu Desnoyers,
Vincent Donnefort, Huang Yiwei, linux-kernel, linux-trace-kernel
On Fri, 14 Mar 2025 16:50:49 +0100
Arnd Bergmann <arnd@kernel.org> wrote:
> From: Arnd Bergmann <arnd@arndb.de>
>
> The tracing code fails to build when CONFIG_MODULES is disabled:
>
> kernel/trace/trace.c: In function 'save_mod':
> kernel/trace/trace.c:6041:45: error: invalid use of undefined type 'struct module'
> 6041 | entry->mod_addr = (unsigned long)mod->mem[MOD_TEXT].base;
> | ^~
>
> The problem here is that 'struct module' is not defined in this configuration.
>
> Enclose the functions in another #ifdef, just like other parts of this file
> already are.
>
> Fixes: dca91c1c5468 ("tracing: Have persistent trace instances save module addresses")
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> ---
Thanks, but Masami already sent one fix where I commented on and he
then sent an update:
https://lore.kernel.org/all/174188321162.3845006.12665585959241736399.stgit@mhiramat.tok.corp.google.com/
and the update:
https://lore.kernel.org/all/174230515367.2909896.8132122175220657625.stgit@mhiramat.tok.corp.google.com/
-- Steve
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2025-03-21 16:35 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-03-14 15:50 [PATCH] tracing: fix build without CONFIG_MODULES Arnd Bergmann
2025-03-21 16:35 ` Steven Rostedt
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).