Re: [PATCH v7 000/102] KVM TDX basic feature support

From: Chao Gao
Date: Tue Jul 12 2022 - 01:07:45 EST

On Mon, Jul 11, 2022 at 08:17:01AM -0700, Isaku Yamahata wrote:
>Hi. Because my description on large page support was terse, I wrote up more
>detailed one. Any feedback/thoughts on large page support?
>TDP MMU large page support design
>Two main discussion points
>* how to track page status. private vs shared, no-largepage vs can-be-largepage


>Tracking private/shared and large page mappable
>VMM needs to track that page is mapped as private or shared at 4KB granularity.
>For efficiency of EPT violation path (****), at 2MB and 1GB level, VMM should
>track the page can be mapped as a large page (regarding private/shared). VMM
>updates it on MapGPA and references it on the EPT violation path. (****)


+ Peng Chao

Doesn't UPM guarantee that 2MB/1GB large page in CR3 should be either all
private or all shared?

KVM always retrieves the mapping level in CR3 and enforces that EPT's
page level is not greater than that in CR3. My point is if UPM already enforces
no mixed pages in a large page, then KVM needn't do that again (UPM can
be trusted).

Maybe I am misunderstanding something?