  LFENCE/JMP is an existing software mitigation option for Branch Target
Injection (BTI) and similar transient execution attacks stemming from indirect
branch predictions, which is commonly used on AMD processors. However, the
effectiveness of this mitigation can be compromised by the inherent race
condition between the speculative execution of the predicted target and the
architectural resolution of the intended target, since this can create a window
in which code can still be transiently executed.
  This work investigates the potential sources of latency that may contribute
to such a speculation window. We show that an attacker can "win the race", and
thus that this window can still be sufficient to allow exploitation of
BTI-style attacks on a variety of different x86 CPUs, despite the presence of
the LFENCE/JMP mitigation.
