Hi Sean, > No, each vCPU has its own MMU instance, where an "MMU instance" is (mostly) a KVM > construct. Per-vCPU MMU instances are necessary because each vCPU has its own > relevant state, e.g. CR0, CR4, EFER, etc..., that affects the MMU instance in > some way. E.g. the MMU instance is used to walk guest page tables when > translating GVA->GPA for emulation, so per-vCPU MMUs are necessary even when > using TDP. > > However, shadow/TDP PTEs are shared between compatible MMU instances. E.g. in > the common case where all vCPUs in a VM use identical settings, there will > effectively be a single set of TDP page tables shared by all vCPUs. What do you mean by "MMU instance"? Do you mean VMCS? MMU is hardware. Could you please share me the code of the MMU instance in KVM? Thanks!