[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH v2 5/6] x86: guard against straight-line speculation past RET
On 08.10.2020 18:28, Roger Pau Monné wrote: > On Mon, Sep 28, 2020 at 02:31:49PM +0200, Jan Beulich wrote: >> Under certain conditions CPUs can speculate into the instruction stream >> past a RET instruction. Guard against this just like 3b7dab93f240 >> ("x86/spec-ctrl: Protect against CALL/JMP straight-line speculation") >> did - by inserting an "INT $3" insn. It's merely the mechanics of how to >> achieve this that differ: A set of macros gets introduced to post- >> process RET insns issued by the compiler (or living in assembly files). >> >> Unfortunately for clang this requires further features their built-in >> assembler doesn't support: We need to be able to override insn mnemonics >> produced by the compiler (which may be impossible, if internally >> assembly mnemonics never get generated), and we want to use \(text) >> escaping / quoting in the auxiliary macro. >> >> Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx> > > Code LGTM. > > Acked-by: Roger Pau Monné <roger.pau@xxxxxxxxxx> Thanks. >> --- >> TBD: Should this depend on CONFIG_SPECULATIVE_HARDEN_BRANCH? > > I don't see the additions done in 3b7dab93f240 being guarded by > CONFIG_SPECULATIVE_HARDEN_BRANCH, so in that regard I would say no. > However those are already guarded by CONFIG_INDIRECT_THUNK so it's > slightly weird that the addition of such protections cannot be turned > off in any way. > > I would be fine with having the additions done in 3b7dab93f240 > protected by CONFIG_SPECULATIVE_HARDEN_BRANCH, and then the additions > done here also. Okay, perhaps I'll make a separate patch then to add the conditional at all respective places. Jan
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |