Module tdcall

Source
Expand description

The TDCALL instruction causes a VM exit to the Intel TDX module.

It is used to call guest-side Intel TDX functions. For more information about TDCALL, please refer to the Intel® TDX Module v1.5 ABI Specification

Structs§

GlaListEntry
The GlaListEntry species a range of consecutive guest linear addresses, each aligned on 4KB.
GlaListInfo
The GlaListInfo is used as a GPR input and output operand of TDG.VP.INVGLA.
GpaAttr
GPA Attributes (Single VM) Definition.
GpaAttrAll
GPA Attributes (all VMs) Definition.
GuestTdAttributes
GuestTdAttributes is defined as a 64b field that specifies various guest TD attributes. It is reported to the guest TD by TDG.VP.INFO and as part of TDREPORT_STRUCT returned by TDG.MR.REPORT.
L2EnterGuestState
L2EnterGuestState is used as input and output of enter_l2_vcpu.
PageAttr
ReportMac
ReportType
REPORTTYPE indicates the reported Trusted Execution Environment (TEE) type, sub-type and version.
TdInfo
TDINFO_STRUCT is defined as the TDX-specific TEE_INFO part of TDG.MR.REPORT.
TdReport
TdgVeInfo
TdgVpInfo

Enums§

Gpaw
InitError
InvdTranslations
Controls how enter_l2_vcpu flushes the TLB context and extended paging structure (EPxE) caches associated with the L2 VM before entering the L2 VCPU.
TdCallError
TdcallNum
TDCALL Instruction Leaf Numbers Definition.
TdxVirtualExceptionType
TeeType

Functions§

accept_page
Accept a pending private page and initialize it to all-0 using the TD ephemeral private key.
enter_l2_vcpu
Enter L2 VCPU operation.
extend_rtmr
Extend a TDCS.RTMR measurement register.
get_report
TDG.MR.REPORT creates a TDREPORT_STRUCT structure that contains the measurements/configuration information of the guest TD that called the function, measurements/configuration information of the Intel TDX module and a REPORTMACSTRUCT.
get_tdinfo
Get guest TD execution environment information.
get_veinfo
Get Virtualization Exception Information for the recent #VE exception.
invalidate_l2_cached_ept
Invalidate cached EPT translations for selected L2 VMs.
invalidate_l2_gla
Invalidate Guest Linear Address (GLA) mappings in the translation lookaside buffers (TLBs) and paging-structure caches for a specified L2 VM and a specified list of 4KB-aligned linear addresses.
read_page_attr
Read the GPA mapping and attributes of a TD private page.
read_servetd
As a service TD, read a metadata field (control structure field) of a target TD.
read_td_metadata
Read a TD-scope metadata field (control structure field) of a TD.
set_cpuidve
TDG.VP.CPUIDVE.SET controls unconditional #VE on CPUID execution by the guest TD.
verify_report
Verify a cryptographic REPORTMACSTRUCT that describes the contents of a TD, to determine that it was created on the current TEE on the current platform.
write_page_attr
Write the attributes of a private page. Create or remove L2 page aliases as required.
write_servetd
As a service TD, write a metadata field (control structure field) of a target TD.
write_td_metadata
Write a TD-scope metadata field (control structure field) of a TD.