On Wed, Oct 09, 2019 at 01:11:24PM +0200, Paolo Bonzini wrote: > On 09/10/19 12:42, Vitaly Kuznetsov wrote: > > Paolo Bonzini <pbonzini@xxxxxxxxxx> writes: > >> There is no practical difference with Vitaly's patch. The first > >> _vcpu_run has no pre-/post-conditions on the value of %rbx: > > > > I think what Sean was suggesting is to prevent GCC from inserting > > anything (and thus clobbering RBX) between the call to guest_call() and > > the beginning of 'asm volatile' block by calling *inside* 'asm volatile' > > block instead. > > Yes, but there is no way that clobbering RBX will break the test, > because RBX is not initialized until after the first _vcpu_run succeeds. Ah, nice, wasn't aware of that.