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. Paolo