Re: [PATCH v4 00/16] objtool: Enable and implement --mcount option on powerpc
From: Naveen N. Rao
Date: Mon Oct 10 2022 - 07:49:34 EST
Sathvika Vasireddy wrote:
This patchset enables and implements objtool --mcount
option on powerpc. This applies atop powerpc/merge branch.
Changelog:
----
v4:
* Patch 11/16 - Introduce a new config option
CONFIG_HAVE_OBJTOOL_NOP_MCOUNT as a means for
architectures to enable nop'ing ftrace locations.
- Remove Acked-by tag from Peter Zijlstra (Intel),
and Reviewed-by tag from Christophe Leroy.
[This is done because I reworked the patch to add
a new config option to objtool. Please let me know
if you want me to retain the tags. Thanks!]
* Patch 16/16 - Rework the patch to handle only 'bl' instruction
decoding.
With changes to the two patches in this series that I have described,
and with my patch to have ftrace ignore weak symbols (*) applied, I
built a ppc64le config.
(*) http://lkml.kernel.org/r/20220809105425.424045-1-naveen.n.rao@xxxxxxxxxxxxxxxxxx
I then used the below diff to disable objtool and to build with
recordmcount:
diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig
index 7e28a8fd4c24fa..81c9f895d69012 100644
--- a/arch/powerpc/Kconfig
+++ b/arch/powerpc/Kconfig
@@ -238,8 +238,6 @@ config PPC
select HAVE_MOD_ARCH_SPECIFIC
select HAVE_NMI if PERF_EVENTS || (PPC64 && PPC_BOOK3S)
select HAVE_OPTPROBES
- select HAVE_OBJTOOL if PPC32 || MPROFILE_KERNEL
- select HAVE_OBJTOOL_MCOUNT if HAVE_OBJTOOL
select HAVE_PERF_EVENTS
select HAVE_PERF_EVENTS_NMI if PPC64
select HAVE_PERF_REGS
Comparing available_filter_functions across the two builds showed the
below differences:
$ diff ftrace_funcs_recordmcount_20221010.sort.out ftrace_funcs_objtool_20221010.sort.out
6799d6798
< __dev_alloc_name
6800a6800
> dev_alloc_name_ns
11680d11679
< find_zone.isra.0
22396a22396
> ns_capable_common.part.0
All the above changes are down to compiler optimizations and shuffling
due to CONFIG_OBJTOOL being enabled and changing annotate_unreachable().
As such, for this series:
Reviewed-by: Naveen N. Rao <naveen.n.rao@xxxxxxxxxxxxxxxxxx>
Tested-by: Naveen N. Rao <naveen.n.rao@xxxxxxxxxxxxxxxxxx>
Josh,
Are you ok if this series is taken in through the powerpc tree?
- Naveen