Boot Error Record Table (BERT)

Aus Thomas-Krenn-Wiki
Zur Navigation springen Zur Suche springen

Die Boot Error Record Table (BERT) ist eine ACPI Tabelle, mittels derer die Firmware eines Server-Systems Informationen zu vorhergegangenen Hardwarefehlern dem Betriebssystem bereitstellen kann. Wenn unter normalen Umständen ein Hardwarefehler auftritt, wird der OS-Kernel benachrichtigt. Ist der Fehler aber so umfangreich, dass die Firmware das System zurücksetzt oder abstürzen lässt ohne den OS-Kernel zu benachrichtigen, kann die Firmware Informationen zum Fehler in die BERT eintragen.

Grundlagen

Die ACPI Spezifikation definiert im Kapitel 18.3 das Format der Boot Error Record Table.[1]

Die ACPI Fehlerschnittstellen (ACPI Platform Error Interfaces - APEI) sind darauf ausgelegt, Hardwarefehler zu überprüfen und dem Betriebssystem als Corrected Error (CE) und Uncorrected Error (UC) zu melden.

Unter normalen Umständen wird der OS-Kernel über einen Non-maskable Interrupt (NMI), eine Machine-check Exception (MCE) oder eine andere Methode informiert. Der Kernel verarbeitet die Fehlerinformation, meldet diese und behebt - sofern möglich - den Fehler.

Manchmal ist der Fehler jedoch so gravierend, dass die Firmware den Server direkt zurücksetzt, ohne den OS-Kernel zu benachrichtigen. Der Linux-Kernel kann dann beim nächsten Neustart die Boot Error Record Table (BERT) verwenden, um die nicht gemeldeten Hardware-Fehler, die bei einem früheren Bootvorgang aufgetreten sind, zu ermitteln:[2]

BERT: Error records from previous boot:
[Hardware Error]: It has been corrected by h/w and requires no further action
[Hardware Error]: event severity: corrected
[Hardware Error]:  Error 0, type: recoverable
[Hardware Error]:   section_type: memory error
[Hardware Error]:   error_status: 0x0000000000000400
[Hardware Error]:   physical_address: 0xffffffffffffffff
[Hardware Error]:   card: 1 module: 2 bank: 3 row: 1 column: 2 bit_position: 5
[Hardware Error]:   error_type: 2, single-bit ECC

Linux Kernel Support

Wichtige Änderungen des BERT Supports in Linux:

Linux Kernel Version Commit
Log sämtlicher Patches /drivers/acpi/apei/bert.c (git.kernel.org)
6.1 ACPI: APEI: Add BERT error log footer
6.0 ACPI: APEI: Better fix to avoid spamming the console with old error logs
5.18 ACPI/APEI: Limit printable size of BERT table data
4.8 ACPI / APEI: Add Boot Error Record Table (BERT) support

Weitere Informationen

Einzelnachweise

  1. 18.3. Error Source Discovery (ACPI Specification Version 6.5)
  2. ACPI / APEI: Add Boot Error Record Table (BERT) support (git.kernel.org, 29.06.2016)


Foto Werner Fischer.jpg

Autor: Werner Fischer

Werner Fischer arbeitet im Product Management Team von Thomas-Krenn. Er evaluiert dabei neueste Technologien und teilt sein Wissen in Fachartikeln, bei Konferenzen und im Thomas-Krenn Wiki. Bereits 2005 - ein Jahr nach seinem Abschluss des Studiums zu Computer- und Mediensicherheit an der FH Hagenberg - heuerte er beim bayerischen Server-Hersteller an. Als Öffi-Fan nutzt er gerne Bus & Bahn und genießt seinen morgendlichen Spaziergang ins Büro.


Das könnte Sie auch interessieren

Messen von I/O Performance
Rackmontage von Thomas-Krenn-Server
USV im Rechenzentrum nutzen