-
Notifications
You must be signed in to change notification settings - Fork 99
TDCALL
SECURE ARBITRATION MODE (SEAM)
<b>TDCALL</b> — Call SEAM Module| Opcode | Instruction | Op/ En | 64-bit Mode | Compat/ Leg Mode | Description |
| 66 0F 01 CC | TDCALL | ZO | Valid | Valid | Call SEAM monitor from SEAM guest. |
| Op/En | Operand 1 | Operand 2 | Operand 3 | Operand 4 |
| ZO | N/A | N/A | N/A | N/A |
TDCALL is a privileged instruction that allows software running in SEAM non-root operation to call software running in SEAM root operation. The instruction can be executed only in SEAM non-root operation or VMX non-root operation.
In SEAM non-root operation or VMX non-root operation, execution causes a VM exit with exit reason 77 (TDCALL).
IF not in SEAM non-root operation and not in VMX non-root operation
THEN #UD;
ELSIF CPL > 0
THEN #GP(0);
ELSE VM exit;
FI;None.
#UD If executed outside VMX non-root operation and outside SEAM non-root operation.
#GP(0) If the current privilege level is not 0.
#UD If executed outside VMX non-root operation and outside SEAM non-root operation.
#UD If executed outside VMX non-root operation and outside SEAM non-root operation.
#GP(0) If executed in VMX non-root operation or in SEAM non-root operation.
Same as protected mode exceptions.
Same as protected mode exceptions.
Vol. 3C 35-9 INTEL® PROCESSOR TRACE
Table 36-51. Event Data Packet Definition (Contd.)
| Packet Format | 7 6 5 4 3 2 1 0 0 0 0 0 0 0 0 1 0 1 0 1 0 1 0 0 1 1 2 Reserved Type[5:0] 3 Payload[7:0] 4 Payload[15:8] 5 Payload[23:16] 6 Payload[31:24] 7 Payload[39:32] 8 Payload[47:40] 9 Payload[55:48] 10 Payload[63:56] | ||||||||||||||
| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | ||||||||
| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | |||||||
| 1 | 0 | 1 | 0 | 1 | 0 | 0 | 1 | 1 | |||||||
| 2 | Reserved | Type[5:0] | |||||||||||||
| 3 | Payload[7:0] | ||||||||||||||
| 4 | Payload[15:8] | ||||||||||||||
| 5 | Payload[23:16] | ||||||||||||||
| 6 | Payload[31:24] | ||||||||||||||
| 7 | Payload[39:32] | ||||||||||||||
| 8 | Payload[47:40] | ||||||||||||||
| 9 | Payload[55:48] | ||||||||||||||
| 10 | Payload[63:56] | ||||||||||||||
| Dependencies | IA32_RTIT_CTL.EventEn && TriggerEn && ContextEn | Generation Scenario | Page fault, including those injected on VM entry. VM exit, if “Suppress VMX packets on exit” VMCS exit control is 0. | ||||||||||||
| Description | Provides additional data about the event that caused the following CFE. The Payload field is dictated by the Type. Type Payload '000000 Page Fault Linear Address, same as CR2 (PFA) '000001 VMX Exit Qualification (VMXQ) '000010 VMX Exit Reason (VMXR) '000011 - '111111 Reserved EVD packets are never generated in cases where a CFE is not. | ||||||||||||||
| Type | Payload | ||||||||||||||
| '000000 | Page Fault Linear Address, same as CR2 (PFA) | ||||||||||||||
| '000001 | VMX Exit Qualification (VMXQ) | ||||||||||||||
| '000010 | VMX Exit Reason (VMXR) | ||||||||||||||
| '000011 - '111111 | Reserved | ||||||||||||||
| Application | EVD packets bind to the same IP (if any) as the subsequent CFE packet. | ||||||||||||||
Source: Intel® 64 and IA-32 Architectures Software Developer's Manual, Combined Volumes (Order Number 325462-091US, March 2026)
Generated: 7-6-2026