On 24/05/21 15:01, Vitaly Kuznetsov wrote:
With 'need_vmcs12_to_shadow_sync', we treat eVMCS as shadow VMCS which happens to shadow all fields and while it may not be the most optimal solution, it is at least easy to comprehend. We can try drafting something up instead, maybe it will also be good but honestly I'm afraid of incompatible changes in KVM_GET_NESTED_STATE/KVM_SET_NESTED_STATE, we can ask Paolo's opinion on that.
Yes, it's much easier to understand it if the eVMCS is essentially a memory-backed shadow VMCS, than if it's really the vmcs12 format. I understand that it's bound to be a little slower, but at least the two formats are not all over the place.
Paolo