On Thu, 15 Oct 2020 18:54:34 -0700
Linus Torvalds <[email protected]> wrote:

> On Thu, Oct 15, 2020 at 10:53 AM Steven Rostedt <[email protected]> wrote:
> >
> > Updates for tracing and bootconfig:
> 
> Hmm. I haven't verified that this came from you, but it seems likely..
> Once again my clang build shows something that I don't see in my
> allmodconfig gcc build:
> 
>    WARNING: modpost: vmlinux.o(.text+0x1e5b06): Section mismatch in
> reference from the function __trace_early_add_events() to the function
> .init.text:__trace_early_add_new_event()
>    The function __trace_early_add_events() references
>    the function __init __trace_early_add_new_event().
>    This is often because __trace_early_add_events lacks a __init
>    annotation or the annotation of __trace_early_add_new_event is wrong.
> 
> Hmm?

Oops, that's my fault.
The commit 720dee53ad8d ("tracing/boot: Initialize per-instance event list
 in early boot") removes __init from __trace_early_add_events() but I
forgot to do same on __trace_early_add_new_event().
Would this work?

diff --git a/kernel/trace/trace_events.c b/kernel/trace/trace_events.c
index 851ab37058dd..e705f06c68c6 100644
--- a/kernel/trace/trace_events.c
+++ b/kernel/trace/trace_events.c
@@ -2498,7 +2498,7 @@ __trace_add_new_event(struct trace_event_call *call, 
struct trace_array *tr)
  * for enabling events at boot. We want to enable events before
  * the filesystem is initialized.
  */
-static __init int
+static int
 __trace_early_add_new_event(struct trace_event_call *call,
                            struct trace_array *tr)
 {


-- 
Masami Hiramatsu <[email protected]>

Reply via email to