RSM

Resume from System Management Mode

Opcodes

Hex Mnemonic Encoding Long Mode Legacy Mode Description
0F AA RSM A Invalid Valid Resume operation of interrupted program.

Instruction Operand Encoding

Op/En Operand 0 Operand 1 Operand 2 Operand 3
A NA NA NA NA

Description

Returns program control from system management mode (SMM) to the application program or operating-system procedure that was interrupted when the processor received an SMM interrupt. The processor's state is restored from the dump created upon entering SMM. If the processor detects invalid state information during state restoration, it enters the shutdown state. The following invalid information can cause a shutdown:

The contents of the model-specific registers are not affected by a return from SMM.

The SMM state map used by RSM supports resuming processor context for non-64-bit modes and 64-bit mode.

See Chapter 26, "System Management," in theIntel®64 and IA-32 ArchitecturesSoftware Developer's Manual, Volume 3B, for more information about SMM and the behavior of the RSM instruction.

Pseudo Code

ReturnFromSMM;
IF (IA-32e mode supported) or (CPUID DisplayFamily_DisplayModel = 06H_0CH)
	ProcessorState = Restore(SMMDump(IA-32e SMM STATE MAP));
	Else ProcessorState = Restore(SMMDump(Non-32-Bit-Mode SMM STATE MAP));
FI

Flags Affected

All.

Exceptions

64-Bit Mode Exceptions

Same exceptions as in protected mode.

Compatibility Mode Exceptions

Same exceptions as in protected mode.

Virtual-8086 Mode Exceptions

Same exceptions as in protected mode.

Real-Address Mode Exceptions

Same exceptions as in protected mode.

Protected Mode Exceptions

Exception Description
#UD If an attempt is made to execute this instruction when the processor is not in SMM. If the LOCK prefix is used.