Re: [PATCH] selftests: kvm: fix sync_regs_test with newer gccs

From: Paolo Bonzini
Date: Wed Oct 09 2019 - 07:11:30 EST


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