Re: [PATCH v3 16/16] objtool,x86: Rewrite retpoline thunk calls

From: Peter Zijlstra
Date: Tue Jun 08 2021 - 14:17:35 EST

On Tue, Jun 08, 2021 at 10:29:56AM -0700, Nathan Chancellor wrote:
> On 6/8/2021 10:22 AM, Peter Zijlstra wrote:

> > Since it's a VM, can you use the gdb-stub to ask it where it's stuck?
> >
> Unfortunately, this is the VM provided by the Windows Subsystem for Linux so
> examining it is nigh-impossible :/ I am considering bisecting the transforms
> that objtool does to try and figure out the one that causes the machine to
> fail to boot or try to reproduce in a different hypervisor, unless you have
> any other ideas.

Does breaking Windows earn points similar to breaking the binary
drivers? :-) :-)

The below should kill this latest transform and would quickly confirm if
the that is causing your problem. If that's not it, what was your last
known working version?

diff --git a/tools/objtool/check.c b/tools/objtool/check.c
index e5947fbb9e7a..d0f231b9c5a1 100644
--- a/tools/objtool/check.c
+++ b/tools/objtool/check.c
@@ -1857,10 +1857,10 @@ static int decode_sections(struct objtool_file *file)
* Must be after add_special_section_alts(), since this will emit
* alternatives. Must be after add_{jump,call}_destination(), since
* those create the call insn lists.
- */
ret = arch_rewrite_retpolines(file);
if (ret)
return ret;
+ */

return 0;