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

From: Vitaly Kuznetsov
Date: Wed Oct 09 2019 - 08:29:50 EST


Paolo Bonzini <pbonzini@xxxxxxxxxx> writes:

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

Right, we're always resuming after so potential clobbering doesn't
matter. Thanks!

--
Vitaly