Re: [PATCH v2.1] x86/retpoline: Fill return stack buffer on vmexit

From: David Woodhouse
Date: Thu Jan 11 2018 - 09:28:54 EST


On Thu, 2018-01-11 at 08:20 -0600, Josh Poimboeuf wrote:
>
> This seems weird. I liked v1 a lot better. What's the problem with
> patching in the whole thing?
>
> Also, if you go back to v1, it should be an easy objtool fix, just add
> ANNOTATE_NOSPEC_ALTERNATIVE in front of it.

The objection was that I was patching in a fairly long set of
instructions. I confess I don't actually know why that's a problem, but
once I looked at it I realised the alignment was broken again. Again,
alignment in the altinstr section doesn't necessarily mean alignment
when it's copied into place over the oldinstr.

I took a quick look at doing it out-of-line and calling it... and
exporting it... and defining it to take *one* register rather than
being a macro... and ditched that approach then ended up with what's in
v2.

Attachment: smime.p7s
Description: S/MIME cryptographic signature