Scalable processor-assisted guest physical address translation

US10705976B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10705976-B2
Application numberUS-201816023537-A
CountryUS
Kind codeB2
Filing dateJun 29, 2018
Priority dateJun 29, 2018
Publication dateJul 7, 2020
Grant dateJul 7, 2020

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Examples include a processor including at least one untrusted extended page table (EPT), circuitry to execute a set of instructions of the instruction set architecture (ISA) of the processor to manage at least one secure extended page table (SEPT), and a physical address translation component to translate a guest physical address of a guest physical memory to a host physical address of a host physical memory using one of the at least one untrusted EPT and the at least one SEPT.

First claim

Opening claim text (preview).

What is claimed is: 1. An apparatus comprising: a processor including instruction set architecture (ISA) circuitry to execute or more secure extended page table (SEPT) instructions to walk at least one SEPT stored in a protected area of a host physical memory that is inaccessible by an untrusted virtual machine manager (VMM); and physical address translation circuitry to translate a guest physical address of a guest physical memory to a host physical address of the host physical memory using the at least one SEPT. 2. The apparatus of claim 1 , comprising an untrusted EPT pointer (EPTP) to reference at least one untrusted EPT and a secure SEPT pointer (SEPTP) to reference the at least one SEPT. 3. The apparatus of claim 2 , comprising a guest physical address space for the guest physical memory divided into a shared guest physical address space and a private guest physical address space. 4. The apparatus of claim 3 , wherein the physical address translation circuitry is configured to read at least one selected bit of the guest physical address to determine whether to walk the at least one untrusted EPT to translate the guest physical address accessing the shared guest physical address space to the host physical address, or the at least one SEPT to translate the guest physical address accessing the private guest physical address space to the host physical address, based on the value of the at least one selected bit. 5. The apparatus of claim 4 , wherein the processor is configured to encrypt at least one page of the host physical memory reached via translation of the private guest physical address with a key of a trusted domain (TD). 6. The apparatus of claim 2 , comprising page miss handler (PMH) circuitry to load at least one EPTP and at least one SEPTP when a trusted domain is initialized and entered on a logical processor. 7. The apparatus of claim 1 , comprising a trusted domain resource manager (TDRM) to call the one or more SEPT instructions to manage the at least one SEPT. 8. The apparatus of claim 1 , wherein the at least one SEPT is encrypted with one of a key of a trusted domain and a processor key. 9. A system, comprising: a host physical memory including a protected area that is inaccessible by an untrusted virtual machine manager (VMM) to store at least one secure extended page table (SEPT); a processor, coupled to the host physical memory, the processor including instruction set architecture (ISA) circuitry to execute one or more SEPT instructions to walk the at least one SEPT; and a physical address translation component to translate a guest physical address of a guest physical memory to a host physical address of the host physical memory using the SEPT. 10. The system of claim 9 , the processor comprising an untrusted EPT pointer (EPTP) to reference at least one untrusted EPT and the host physical memory comprising a protected SEPT pointer (SEPTP) to reference the at least one SEPT. 11. The system of claim 10 , wherein the physical address translation component is configured to read at least one selected bit of the guest physical address to determine whether to walk the at least one untrusted EPT to translate the guest physical address accessing the shared guest physical address space to the host physical address, or the at least one SEPT to translate the guest physical address accessing the private guest physical address space to the host physical address, based on the value of the at least one selected bit. 12. The system of claim 11 , wherein the processor is configured to encrypt at least one page of the host physical memory reached via translation of the private guest physical address with a key of a trusted domain (TD). 13. The system of claim 10 , comprising page miss handler circuitry to load at least one EPTP and at least one SEPTP when a trusted domain is initialized and entered on a logical processor. 14. The system of claim 9 , comprising a guest physical address space for the guest physical memory divided into a shared guest physical address space and a private guest physical address space. 15. The system of claim 9 , comprising a trusted domain resource manager (TDRM) to call the one or more SEPT instructions to manage the at least one SEPT. 16. The system of claim 9 , wherein the at least one SEPT is encrypted with one of a key of a trusted domain and a processor key. 17. A method comprising: receiving a request to translate a guest physical address of a guest physical memory to a host physical address of a host physical memory; determining if a shared bit of the guest physical address is set; and walking a secure extended page table (SEPT) to translate the guest physical address when the shared bit is not set, the SEPT being stored in a protected area of the host physical memory that is inaccessible by an untrusted virtual machine manager (VMM), the walking of the SEPT being performed by executing one or more SEPT instructions of an instruction set architecture (ISA) of a processor. 18. The method of claim 17 , comprising storing the SEPT in a protected area of the host physical memory using encryption and integrity protection using a key of a trusted domain. 19. The method of claim 17 , wherein an untrusted EPT is referenced by an untrusted EPT pointer (EPTP) and the SEPT is referenced by a secure SEPT pointer (SEPTP). 20. The method of claim 17 , comprising dividing a guest physical address space for the guest physical memory into a shared guest physical address space and a private guest physical address space. 21. The method of claim 17 , comprising encrypting at least one page of the host physical memory reached via translation of the private guest physical address with a key of a trusted domain (TD).

Assignees

Inventors

Classifications

  • by using cryptography (for digital transmission H04L9/00) · CPC title

  • Multi-level translation tables · CPC title

  • for multiple virtual address spaces, e.g. segmentation (G06F12/1036 takes precedence) · CPC title

  • Virtual address space management · CPC title

  • Emulated environment, e.g. virtual machine · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10705976B2 cover?
Examples include a processor including at least one untrusted extended page table (EPT), circuitry to execute a set of instructions of the instruction set architecture (ISA) of the processor to manage at least one secure extended page table (SEPT), and a physical address translation component to translate a guest physical address of a guest physical memory to a host physical address of a host p…
Who is the assignee on this patent?
Intel Corp
What technology area does this patent fall under?
Primary CPC classification G06F12/1408. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jul 07 2020 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 3 related publications on this page (citations in our corpus or others sharing the same primary CPC).