Messages in this thread |  | | Date | Tue, 2 Nov 2021 10:05:50 +0100 | From | Peter Zijlstra <> | Subject | Stackleak vs noinstr (Was: [GIT pull] objtool/core for v5.16-rc1) |
| |
On Tue, Nov 02, 2021 at 09:00:36AM +0100, Peter Zijlstra wrote: > On Mon, Nov 01, 2021 at 01:44:39PM -0700, Linus Torvalds wrote:
> > do_machine_check()+0x27: call to stackleak_track_stack ... > > 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 ... > > .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, > > Right, I recently ran into this and hacen't yet had time to look into > it. I suspect my normal build box doesn't have the GCC plugin crud > enabled or somesuch. > > I think the GCC stackleak plugin needs fixing, specifically it needs a > function attribute such that it will not emit instrumentation in noinstr > functions. I'll go chase down the developer of that thing.
Alexander, is there any way to make this plugin grow a function attribute which we can add to noinstr ? There's a strict requirement the compiler doesn't add extra code to noinstr functions these days.
We'll 'soon' be running noinstr C code before switching to kernel page tables even.
|  |