Ogólny błąd sprzętowy APEI

9

W ciągu ostatniego tygodnia mój serwer (z systemem Debian Jessie) zrestartował się dwukrotnie. W dzienniku systemowym widzę to przed każdym ponownym uruchomieniem i nie ma innych punktów:

Aug 15 13:32:58 hoshimiya kernel: [296512.005355] {1}[Hardware Error]: Hardware error from APEI Generic Hardware Error Source: 1
Aug 15 13:32:58 hoshimiya kernel: [296512.005360] {1}[Hardware Error]: It has been corrected by h/w and requires no further action
Aug 15 13:32:58 hoshimiya kernel: [296512.005361] {1}[Hardware Error]: event severity: corrected
Aug 15 13:32:58 hoshimiya kernel: [296512.005362] {1}[Hardware Error]:  Error 0, type: corrected
Aug 15 13:32:58 hoshimiya kernel: [296512.005363] {1}[Hardware Error]:  fru_text: CorrectedErr
Aug 15 13:32:58 hoshimiya kernel: [296512.005364] {1}[Hardware Error]:   section_type: memory error
Aug 15 13:32:58 hoshimiya kernel: [296512.005365] [Firmware Warn]: error section length is too small

Niektórzy googlingu prowadzą mnie do przekonania, że ​​ma to związek z wykrywaniem i odzyskiwaniem pamięci RAM przez ECC RAM. Czy to jest poprawne? Jeśli odzyskuje, dlaczego system się restartuje? Chciałbym uniemożliwić ponowne uruchomienie systemu, jeśli to w ogóle możliwe.

moujik
źródło

Odpowiedzi:

9

Wygląda na to, że pamięć RAM nie działa lub występują błędy, które są naprawiane. W zależności od wagi, wygląda na to, że te błędy wpływają na jego zdolność do działania, a następnie musi zostać ponownie uruchomiony.

Po wyglądzie tego wątku winowajcą jest bit komunikatu na końcu o zbyt małej długości sekcji błędu.

fragment - [PATCH 1/1] efi: cper: Obsługuje inną długość sekcji błędów

Niektóre pola mogą zostać dodane do sekcji błędów w nowszej specyfikacji UEFI. Na przykład pola „Zarezerwowane”, „Numer rangi”, „Uchwyt karty” i „Uchwyt modułu” są dodawane do sekcji Błąd pamięci rozpoczętej od specyfikacji UEFI 2.3. Niestety pojawi się następujący komunikat ostrzegawczy, jeśli zostanie wykryty błąd z korekcją pamięci, a pole „wersja” w strukturze acpi_generic_data jest mniejsze niż 0x203 (specyfikacja UEFI 2.3):

{1}[Hardware Error]: Hardware error from APEI Generic Hardware Error Source: 3
{1}[Hardware Error]: It has been corrected by h/w and requires no further action
{1}[Hardware Error]: event severity: corrected
{1}[Hardware Error]:  Error 0, type: corrected
{1}[Hardware Error]:   section_type: memory error
[Firmware Warn]: error section length is too small

To zachowanie powoduje, że ten poprawiony błąd nie może być wyświetlany poprawnie. Aby rozwiązać problem, ta poprawka obsługuje inną długość sekcji błędów dla różnych wersji specyfikacji UEFI.

I ta łatka wykorzystuje wstępnie zdefiniowaną strukturę do czyszczenia zduplikowanych kodów w funkcji cper_estatus_print_section.

Po zastosowaniu tej poprawki błąd poprawiony w pamięci może być wyświetlany poprawnie po wstrzyknięciu błędu.

Testowany na v3.14-rc5 z platformą Grantley i Intel RAStool.

Wydawałoby się, że łatka na ten konkretny błąd jest już dostępna i może być dostępna w nowszej wersji jądra.

slm
źródło
3

Do twojej wiadomości Wydawało mi się, że mam bardzo podobny problem jak ten.

Jak się okazało, rozwiązaniem było wyjęcie pamięci i ponowne jej zainstalowanie, a wszystko wróciło do normy.

Darren Harrison
źródło