[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20240820181109.4203158d@gandalf.local.home>
Date: Tue, 20 Aug 2024 18:11:09 -0400
From: Steven Rostedt <rostedt@...dmis.org>
To: "Masami Hiramatsu (Google)" <mhiramat@...nel.org>
Cc: Sami Tolvanen <samitolvanen@...gle.com>, Mark Rutland
<mark.rutland@....com>, Linux Trace Kernel
<linux-trace-kernel@...r.kernel.org>, linux-kernel@...r.kernel.org,
clang-built-linux <llvm@...ts.linux.dev>, Nathan Chancellor
<nathan@...nel.org>
Subject: Re: [BUG] tracing: dynamic ftrace selftest detected failures
On Wed, 21 Aug 2024 07:05:39 +0900
Masami Hiramatsu (Google) <mhiramat@...nel.org> wrote:
> Does the noinline attribute prevent embedding callsite too? I mean
>
> extern callee()
>
> noinline callee()
> {
> ...
> }
>
> caller()
> {
> callee() // (*)
> }
>
> In this case, does noinline prevent LTO to embed the callee at the callsite(*)
> or prevent LTO remove the callee() symbol?
>
Even though we have it passed as a parameter, I think the compiler and
linker is smart enough to see that and notice its use, and that the
function passed in is a nop, which doesn't break the flow.
Can you add the __used and see if it fixes it?
-- Steve
Powered by blists - more mailing lists