On Mon, Aug 21, 2023 at 11:54 PM Denis Nikitin <denik@xxxxxxxxxxxx> wrote: > > .llvm.call-graph-profile section is added when the kernel is built with > profiles (e.g. -fprofile-sample-use=<llvm.profile>). Right. .llvm.call-graph-profile may also be added when the kernel is built with clang -fprofile-use= (though instrumentation-based PGO support is not upstreamed yet). > The section holds > metadata for symbols beloning to other sections and hence doesn't need > modpost checks. Typo: belonging. .llvm.call-graph-profile contains edge information derived from text sections, so .llvm.call-graph-profile itself doesn't need more analysis as the text sections have been analyzed. > This change fixes the kernel build with sample profiles which fails > with: > "FATAL: modpost: Please add code to calculate addend for this architecture" > > Signed-off-by: Denis Nikitin <denik@xxxxxxxxxxxx> > --- > scripts/mod/modpost.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/scripts/mod/modpost.c b/scripts/mod/modpost.c > index b29b29707f10..64bd13f7199c 100644 > --- a/scripts/mod/modpost.c > +++ b/scripts/mod/modpost.c > @@ -761,6 +761,7 @@ static const char *const section_white_list[] = > ".fmt_slot*", /* EZchip */ > ".gnu.lto*", > ".discard.*", > + ".llvm.call-graph-profile", /* call graph */ > NULL > }; > > -- > 2.42.0.rc1.204.g551eb34607-goog > > Otherwise the change looks good to me. -- 宋方睿