On 19/09/2017 17:37, Ladi Prosek wrote: > + if (nested_cpu_has_ept(vmcs12)) { > + /* > + * 34.14.1 Default Treatment of SMI Delivery > + * Bit 0 of the 32-bit field at offset SMBASE + 8000H + 7EE0H > + * indicates whether the cpu was in VMX non-root operation with > + * EPT enabled. > + * The 64-bit field at offset SMBASE + 8000H + 7ED8H holds the > + * value of the EPT pointer. > + */ > + put_smstate(u32, smstate, 0x7ee0, > + get_smstate(u32, smstate, 0x7ee0) | 1); This is zero, so it should be enough to just write 1 here. But, it is not clear to me why this is needed. Since we use the AMD format for the SMM state save area anyway, I'm inclined to omit it... Paolo > + put_smstate(u64, smstate, 0x7ed8, vmcs12->ept_pointer); > + }