esb

Error Synchronization Barrier

ESB

Synchronizes unrecoverable system errors.

Pseudocode Operation

SynchronizeErrors()

Encoding

Binary Layout
11010101000000110010
31:12
0010
11:8
000
7:5
11111
4:0
 
Format System Alias
Opcode 0xD503221F
Extension RAS (Reliability)

Operands

Related

Other forms of esb

  • esb Error Synchronization Barrier (A32)

More in RAS (Reliability)

Reference

Instruction Forms

Encoding Instruction ISA Bit pattern
0xD503221F ESB A64 11010101000000110010 | 0010 | 000 | 11111

Description

Error Synchronization Barrier is an error synchronization event that might also update DISR_EL1 and VDISR_EL2. This instruction can be used at all Exception levels and in Debug state. In Debug state, this instruction behaves as if SError interrupts are masked at all Exception levels. See Error Synchronization Barrier in the Arm(R) Reliability, Availability, and Serviceability (RAS) Specification, Armv8, for Armv8-A architecture profile. If the RAS Extension is not implemented, this instruction executes as a NOP.

Operation

if IsFeatureImplemented(FEAT_TME) && TSTATE.depth > 0 then
    FailTransaction(TMFailure_ERR, FALSE);
SynchronizeErrors();
AArch64.ESBOperation();
if PSTATE.EL IN {EL0, EL1} && EL2Enabled() then AArch64.vESBOperation();
TakeUnmaskedSErrorInterrupts();