* Liran Alon (liran.alon@xxxxxxxxxx) wrote: > > > On 18 Jun 2019, at 12:03, Dr. David Alan Gilbert <dgilbert@xxxxxxxxxx> wrote: > > > > * Liran Alon (liran.alon@xxxxxxxxxx) wrote: > >> > >> +static const VMStateDescription vmstate_vmx_vmcs12 = { > >> + .name = "cpu/kvm_nested_state/vmx/vmcs12", > >> + .version_id = 1, > >> + .minimum_version_id = 1, > >> + .needed = vmx_vmcs12_needed, > >> + .fields = (VMStateField[]) { > >> + VMSTATE_UINT8_ARRAY(data.vmx[0].vmcs12, > >> + struct kvm_nested_state, 0x1000), > > > > Where did that magic 0x1000 come from? > > Currently, KVM folks (including myself), haven’t decided yet to expose vmcs12 struct layout to userspace but instead to still leave it opaque. > The formal size of this size is VMCS12_SIZE (defined in kernel as 0x1000). I was wondering if we wish to expose VMCS12_SIZE constant to userspace or not. > So currently I defined these __u8 arrays as 0x1000. But in case Paolo agrees to expose VMCS12_SIZE, we can use that instead. Well if it's not defined it's bound to change at some state! Also, do we need to clear it before we get it from the kernel - e.g. is the kernel guaranteed to give us 0x1000 ? Dave > -Liran > > > -- > > Dr. David Alan Gilbert / dgilbert@xxxxxxxxxx / Manchester, UK > -- Dr. David Alan Gilbert / dgilbert@xxxxxxxxxx / Manchester, UK