Skip to content

SEAMCALL

Henk-Jan Lebbink edited this page Jun 4, 2026 · 1 revision

SECURE ARBITRATION MODE (SEAM) SEAMCALL — Enter SEAM Root Operation

Opcode Instruction Op/ En 64-bit Mode Compat/ Leg Mode Description
66 0F 01 CF SEAMCALL ZO Valid Invalid Transitions to SEAM root operation.

Instruction Operand Encoding

Op/En Operand 1 Operand 2 Operand 3 Operand 4
ZO N/A N/A N/A N/A

Description

SEAMCALL is a privileged instruction that passes control to software running in SEAM root operation. The instruction can be executed only in 64-bit mode in VMX operation outside SEAM and outside SMM. In VMX non-root operation, execution causes a VM exit with exit reason 76, SEAMCALL.

Execution when the SEAM range is not valid (IA32_SEAMRR_MASK MSR[11] = 0) or immediately following execution of MOV to SS or POP SS instruction results in a general-protection exception (#GP).

The instruction uses RAX[63] to select a submode of SEAM root operation: if this value is 1, the instruction transitions into loader-mode SEAM root operation; otherwise, it transitions into module-mode SEAM root operation. The instruction fails with VMFailInvalid indication (see Section 33.2) if SEAM is globally disabled; or if a loader-mode SEAM root operation is called when another logical processor is in SEAM having entered in loader mode.

If there is no failure, the SEAMCALL uses the SEAM-transfer VMCS to effect a SEAM call (see Section 35.1.1). The ® Trust Domain CPU Architectural Extensions. details of such transitions are specified in the Intel

Operation

IF not in VMX operation or in SMM or in SEAM or IA32_EFER.LMA = 0 or CS.L = 0
    THEN #UD;
ELSIF CPL > 0
    THEN #GP(0);
ELSIF in VMX non-root operation
    THEN VM exit;
ELSIF IA32_SEAMRR_MASK.VALID = 0 or events blocked by MOV SS
    THEN #GP(0);
ELSIF SEAM is globally disabled
    THEN VMFailInvalid;
ELSIF RAX[63] = 0
    THEN
        IF module-mode SEAM root operation is not ready for execution
            THEN VMFailInvalid;
        ELSE
            Enter module-mode SEAM root operation;
        FI;
ELSE
    IF loader-mode SEAM root operation is not ready for execution or
            another logical processor is executing in SEAM having entered in loader mode
        THEN VMFailInvalid;
    ELSE
        Enter loader-mode SEAM root operation;
    FI;
FI;
                            Vol. 3C 35-7

Source: Intel® 64 and IA-32 Architectures Software Developer's Manual, Combined Volumes (Order Number 325462-091US, March 2026)
Generated: 7-6-2026

Clone this wiki locally