Re: [GIT pull] objtool/core for v5.16-rc1

From: Linus Torvalds
Date: Mon Nov 01 2021 - 16:45:06 EST


On Sun, Oct 31, 2021 at 6:16 PM Thomas Gleixner <tglx@xxxxxxxxxxxxx> wrote:
>
> please pull the latest objtool/core branch from:

Hmm. I've pulled this, but I'm not happy about the new warnings it
generates with an allmodconfig build:

vmlinux.o: warning: objtool: __do_fast_syscall_32()+0xa: call to
stackleak_track_stack() leaves .noinstr.text section
..
do_syscall_64()+0x9: call to stackleak_track_stack ...
do_int80_syscall_32()+0x9: call to stackleak_track_stack ...
exc_general_protection()+0x22: call to stackleak_track_stack ...
fixup_bad_iret()+0x20: call to stackleak_track_stack ...
mce_setup()+0x18: call to memset ...
do_machine_check()+0x27: call to stackleak_track_stack ...
rcu_dynticks_eqs_enter()+0x0: call to rcu_dynticks_task_trace_enter ...
rcu_dynticks_eqs_exit()+0xe: call to rcu_dynticks_task_trace_exit ...
rcu_nmi_enter()+0x36: call to __kasan_check_read ...
.entry.text+0x10e6: call to stackleak_erase ...
.entry.text+0x143: call to stackleak_erase ...
.entry.text+0x17d9: call to stackleak_erase ...

most seem to be about the stackleak thing, but there's a memset in
there too, and rcu_dynticks_task_trace_enter/exit and
__kasan_check_read..

It may be compiler-dependent, this is with F34 and gcc 11.2.1 20210728.

With my actual normal config (and clang), I don't see any of these,
but that's not only a different compiler, it's a much smaller config
that has no kasan/stackleak etc.

Linus