[PATCH v2 00/24] objtool/x86: noinstr vs PARAVIRT

From: Peter Zijlstra
Date: Thu Jun 24 2021 - 05:56:04 EST


Hi,

Per long standing request from Thomas, this makes the noinstr validation work
with PARAVIRT=y.

It isn't exactly pretty, but it does work.

With all this on top of tip/master (which includes some of the previous round),
all (*) the robots seem to get is endless garbage like:

vmlinux.o: warning: objtool: __rdgsbase_inactive()+0x24: call to ftrace_likely_update() leaves .noinstr.text section

And my secret plan is to pull the KPTI CR3 swizzling into C such that all that
will insta explode and become unfixable.

Steve, can I please delete TRACE_BRANCH_PROFILING and PROFILE_ALL_BRANCHES already?


(*) there were also a few reports from 0day running out of memory.