On 3/5/21 12:37 AM, Guodong Xu wrote:
Thanks to John Stultz, now I know that this may relate to the new improvements about IPA-SRA in GCC 10. Refer to [1], which states: "Inter-procedural optimization improvements: The inter-procedural scalar replacement of aggregates (IPA-SRA) pass was re-implemented to work at link-time and can now also remove computing and returning unused return values."
However, such a change of symbol names negatively impacts the tracing tools commonly used in kernel debugging. Such as bcc/eBPF, who __hardcoded__ function names (without the .isra.0 suffix) into their scripts.
You can add __noclone to prevent such.
r~