On Wed, Mar 13, 2024 at 08:51:53PM +0000,
"Edgecombe, Rick P" <rick.p.edgecombe@xxxxxxxxx> wrote:
On Mon, 2024-02-26 at 00:26 -0800, isaku.yamahata@xxxxxxxxx wrote:
From: Isaku Yamahata <isaku.yamahata@xxxxxxxxx>
For private GPA, CPU refers a private page table whose contents are
encrypted. The dedicated APIs to operate on it (e.g.
updating/reading its
PTE entry) are used and their cost is expensive.
When KVM resolves KVM page fault, it walks the page tables. To reuse
the
existing KVM MMU code and mitigate the heavy cost to directly walk
private
page table, allocate one more page to copy the dummy page table for
KVM MMU
code to directly walk. Resolve KVM page fault with the existing
code, and
do additional operations necessary for the private page table.
To
distinguish such cases, the existing KVM page table is called a
shared page
table (i.e. not associated with private page table), and the page
table
with private page table is called a private page table.
This makes it sound like the dummy page table for the private alias is
also called a shared page table, but in the drawing below it looks like
only the shared alias is called "shared PT".
How about this,
Call the existing KVM page table associated with shared GPA as shared page table. > Call the KVM page table associate with private GPA as private page table.