Re: [PATCH v2 08/13] KVM: x86: Dynamically allocate per-vCPU emulation context

From: Vitaly Kuznetsov
Date: Tue Mar 03 2020 - 11:18:15 EST


Sean Christopherson <sean.j.christopherson@xxxxxxxxx> writes:

> On Tue, Mar 03, 2020 at 11:26:21AM +0100, Paolo Bonzini wrote:
>> On 26/02/20 18:29, Vitaly Kuznetsov wrote:
>> >> struct x86_emulate_ctxt {
>> >> + void *vcpu;
>> > Why 'void *'? I changed this to 'struct kvm_vcpu *' and it seems to
>> > compile just fine...
>> >
>>
>> I guess because it's really just an opaque pointer; using void* ensures
>> that the emulator doesn't break the emulator ops abstraction.
>
> Ya, it prevents the emulator from directly deferencing the vcpu.
>

Makes sense, a comment like /* Should never be dereferenced by the
emulater */ would've helped)

--
Vitaly