On Thu, Apr 08, 2021, Vineeth Pillai wrote: > Hi Vitaly, > > On 4/8/21 7:06 AM, Vitaly Kuznetsov wrote: > > - if (ms_hyperv.hints & HV_X64_ENLIGHTENED_VMCS_RECOMMENDED) { > > + /* > > + * AMD does not need enlightened VMCS as VMCB is already a > > + * datastructure in memory. > > Well, VMCS is also a structure in memory, isn't it? It's just that we > > don't have a 'clean field' concept for it and we can't use normal memory > > accesses. Technically, you can use normal memory accesses, so long as software guarantees the VMCS isn't resident in the VMCS cache and knows the field offsets for the underlying CPU. The lack of an architecturally defined layout is the biggest issue, e.g. tacking on dirty bits through a PV ABI would be trivial. > Yes, you are right. I was referring to the fact that we cant use normal > memory accesses, but is a bit mis-worded. If you slot in "architectural" it will read nicely, i.e. "VMCB is already an architectural datastructure in memory".