On Fri, Nov 15, 2024 at 9:50 AM Yan Zhao <yan.y.zhao@xxxxxxxxx> wrote: > Sean also suggested making the self-snoop feature a hard dependency for > enabling TDX [2]. > > That is because > - TDX shared EPT is able to reuse the memory type specified in VMX's code > as long as guest MTRRs are not referenced. > - KVM does not call kvm_zap_gfn_range() when attaching/detaching > non-coherent DMA devices when the CPU have feature self-snoop. [3] > > However, [3] cannot be guaranteed after commit 9d70f3fec144 ("Revert "KVM: > VMX: Always honor guest PAT on CPUs that support self-snoop"), which was > due to a regression with the bochsdrm driver. I think we should treat honoring of guest PAT like zap-memslot-only, and make it a quirk that TDX disables. Making it a quirk adds a bit of complexity, but it documents why the code exists and it makes it easy for TDX to disable it. Paolo