Updated: 2025/Nov/16

Please read Privacy Policy. It's for your privacy.


APEI(4)                      Device Drivers Manual                     APEI(4)

NAME
     apei - ACPI Platform Error Interfaces

SYNOPSIS
     apei* at apeibus?

DESCRIPTION
     apei reports hardware errors discovered through APEI, the ACPI Platform
     Error Interfaces.

     apei also supports injecting errors.

DIAGNOSTICS
     When the hardware detects an error and reports it to apei, it will print
     information about the error to the console.

     Example of a correctable memory error, automatically corrected by the
     system, with no further intervention needed:

     apei0: error source 1 reported hardware error: severity=corrected nentries=1 status=0x12<CE,GEDE_COUNT=0x1>
     apei0: error source 1 entry 0: SectionType={0xa5bc1114,0x6f64,0x4ede,0xb8b8,{0x3e,0x83,0xed,0x7c,0x83,0xb1}} (memory error)
     apei0: error source 1 entry 0: ErrorSeverity=2 (corrected)
     apei0: error source 1 entry 0: Revision=0x201
     apei0: error source 1 entry 0: Flags=0x1<PRIMARY>
     apei0: error source 1 entry 0: FruText=CorrectedErr
     apei0: error source 1 entry 0: MemoryErrorType=8 (PARITY_ERROR)

     Example of a fatal uncorrectable memory error:

     apei0: error source 0 reported hardware error: severity=fatal nentries=1 status=0x11<UE,GEDE_COUNT=0x1>
     apei0: error source 0 entry 0: SectionType={0xa5bc1114,0x6f64,0x4ede,0xb8b8,{0x3e,0x83,0xed,0x7c,0x83,0xb1}} (memory error)
     apei0: error source 0 entry 0: ErrorSeverity=1 (fatal)
     apei0: error source 0 entry 0: Revision=0x201
     apei0: error source 0 entry 0: Flags=0x1<PRIMARY>
     apei0: error source 0 entry 0: FruText=UncorrectedErr
     apei0: error source 0 entry 0: ErrorStatus=0x400<ErrorType=0x4=ERR_MEM>
     apei0: error source 0 entry 0: Node=0x0
     apei0: error source 0 entry 0: Module=0x0
     apei0: error source 0 entry 0: Device=0x0
     panic: fatal hardware error

     Details of the hardware error sources can be dumped with
     acpidump(8).

SEE ALSO
     acpi(4), acpihed(4), acpidump(8)

     ACPI Specification 6.5,
     https://uefi.org/specs/ACPI/6.5/18_Platform_Error_Interfaces.html,
     Chapter 18: ACPI Platform Error Interfaces (APEI).

HISTORY
     The apei driver first appeared in NetBSD 10.1.

AUTHORS
     The apei driver was written by Taylor R Campbell <riastradh@NetBSD.org>.

BUGS
     No sysctl interface to read BERT after boot.

     No simple sysctl interface to inject errors with EINJ, or any way to
     inject errors at physical addresses in pages allocated for testing.
     Perhaps there should be a separate kernel module for that.

     Nothing reads, writes, or clears ERST.  NetBSD could use it to store
     dmesg or other diagnostic information on panic.

     Many hardware error source types in the HEST are missing, such as PCIe
     errors.

     apei is not wired to any machine-dependent machine check exception
     notifications.

     No formal log format or sysctl/device interface that programs can
     reliably act on.

     NetBSD makes no attempt to recover from uncorrectable but recoverable
     errors, such as discarding a clean cached page where an uncorrectable
     memory error has occurred.

NetBSD 11.99                    March 18, 2024                    NetBSD 11.99