Commit 1ef061a4 authored by Denis Nikitin's avatar Denis Nikitin Committed by Masahiro Yamada

modpost: Skip .llvm.call-graph-profile section check

.llvm.call-graph-profile section is added by clang when the kernel is
built with profiles (e.g. -fprofile-sample-use= or -fprofile-use=).
Note that .llvm.call-graph-profile intentionally uses REL relocations
to decrease the object size, for more details see
https://reviews.llvm.org/D104080.

The section 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 clang and a sample profile
which currently fails with:

"FATAL: modpost: Please add code to calculate addend for this architecture"
Signed-off-by: default avatarDenis Nikitin <denik@chromium.org>
Reviewed-by: default avatarNick Desaulniers <ndesaulniers@google.com>
Reviewed-by: default avatarFangrui Song <maskray@google.com>
Signed-off-by: default avatarMasahiro Yamada <masahiroy@kernel.org>
parent 151aeca2
......@@ -762,6 +762,7 @@ static const char *const section_white_list[] =
".fmt_slot*", /* EZchip */
".gnu.lto*",
".discard.*",
".llvm.call-graph-profile", /* call graph */
NULL
};
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment