On Tue, Sep 01, 2020 at 07:53:46PM -0700, Kees Cook wrote: > We don't want to depend on the linker's orphan section placement > heuristics as these can vary between linkers, and may change between > versions. All sections need to be explicitly handled in the linker script. > > Now that all sections are explicitly handled, enable orphan section > warnings. > > Signed-off-by: Kees Cook <keescook@xxxxxxxxxxxx> > --- > arch/x86/Makefile | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/arch/x86/Makefile b/arch/x86/Makefile > index 4346ffb2e39f..154259f18b8b 100644 > --- a/arch/x86/Makefile > +++ b/arch/x86/Makefile > @@ -209,6 +209,10 @@ ifdef CONFIG_X86_64 > LDFLAGS_vmlinux += -z max-page-size=0x200000 > endif > > +# We never want expected sections to be placed heuristically by the > +# linker. All sections should be explicitly named in the linker script. > +LDFLAGS_vmlinux += $(call ld-option, --orphan-handling=warn) > + > archscripts: scripts_basic > $(Q)$(MAKE) $(build)=arch/x86/tools relocs > > -- > 2.25.1 > With LLVM=1 and GCOV_KERNEL/GCOV_PROFILE_ALL enabled, there are .eh_frame sections created. I see that KASAN and KCSAN currently discard them. Does GCOV actually need them or should it also discard? Thanks.