Re: [RFC PATCH kernel] trace: Make FTRACE_MCOUNT_USE_RECORDMCOUNT configurable
From: Naveen N. Rao
Date: Wed Feb 16 2022 - 04:52:22 EST
Alexey Kardashevskiy wrote:
On 2/15/22 03:10, Sami Tolvanen wrote:
On Fri, Feb 11, 2022 at 4:11 PM Nick Desaulniers
<ndesaulniers@xxxxxxxxxx> wrote:
+ Sami, Kees
Do you guys remember why we don't support
FTRACE_MCOUNT_USE_RECORDMCOUNT with LTO?
It's because recordmcount cannot distinguish between calls and other
references to mcount/fentry, which is a problem with LTO where we have
to process the entire vmlinux.o and cannot ignore individual
translation units. Instead of resorting to workarounds, Peter was kind
enough to implement a smarter mcount pass in objtool, which we now use
on x86_64 with LTO.
I had responded on a different thread about this:
http://lkml.kernel.org/r/1644579444.bal9kji6uc.naveen@xxxxxxxxxxxxx
We are working on enabling 'objtool check --mcount' on powerpc.
So can x86_64 have both FTRACE_MCOUNT_USE_RECORDMCOUNT and LTO?
No. x86_64 now supports HAVE_OBJTOOL_MCOUNT, which enables
FTRACE_MCOUNT_USE_OBJTOOL. That allows LTO to be used.
- Naveen