Недавно мы рассмотрели ODROID-H2 с Ubuntu 19.04 и заметили некоторые сообщения об ошибках в журнале ядра одноплатного компьютера Intel Celeron J4105 при выполнении теста SBC-Bench:
Crayon Syntax Highlighter v_2.7.2_beta
1
2
3
4
5
6
7
8
9
|
[180422.405294] mce: [Hardware Error]: Machine check events logged
[180425.656449] mce: [Hardware Error]: Machine check events logged
[180483.582825] mce_notify_irq: 17 callbacks suppressed
[180483.582827] mce: [Hardware Error]: Machine check events logged
[180484.991484] mce: [Hardware Error]: Machine check events logged
[180594.700684] mce_notify_irq: 13 callbacks suppressed
[180594.700686] mce: [Hardware Error]: Machine check events logged
[180858.202115] mce: [Hardware Error]: Machine check events logged
[181178.047031] mce: [Hardware Error]: Machine check events logged
|
[Format Time: 0.0004 seconds]
Не понятно, что делать с этими ошибками, но нам сказали, что мы получим более подробную информацию с помощью mcelog, который можно установить следующим образом:
Crayon Syntax Highlighter v_2.7.2_beta
1
|
sudo apt install mcelog
|
[Format Time: 0.0000 seconds]
Есть только одна маленькая проблема: его нет в репозитории Ubuntu 19.04, а в отчете об ошибке упоминается, что mcelog устарел, и его необходимо удалить из Ubuntu 18.04 Bionic. Вместо этого нам сообщают, что функциональность пакета mcelog была заменена на rasdaemon.
Но, прежде чем изучать утилиты, давайте выясним, что такое Machine Check Exception (MCE) из ArchLinux Wiki:
Machine Check Exception (MCE) – это ошибка, генерируемая ЦП, когда ЦП обнаруживает, что произошла аппаратная ошибка или сбой.
Machine Check Exception (MCE) могут возникать по разным причинам: от нежелательных или не соответствующих напряжений от источника питания, от космического излучения, изменяющего биты в модулях памяти DIMM или ЦП, или от других различных сбоев, включая сбой программного обеспечения вызывающий аппаратные ошибки.
Аппаратную ошибку, вероятно, следует воспринимать всерьез. Давайте рассмотрим, как запустить инструменты. Сначала попытаемся установить mcelog из Ubuntu 16.04:
Crayon Syntax Highlighter v_2.7.2_beta
1
2
|
wget http : / / archive .ubuntu .com / ubuntu / pool / universe / m / mcelog / mcelog_128 + dfsg — 1_amd64.deb
sudo dpkg — i mcelog_128 + dfsg — 1_amd64.deb
|
[Format Time: 0.0001 seconds]
Отлично! Запустим несколько команд:
Crayon Syntax Highlighter v_2.7.2_beta
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
sudo mcelog
[sudo] password for odroid:
mcelog: Family 6 Model 7a CPU: only decoding architectural errors
mcelog: warning: 32 bytes ignored in each record
mcelog: consider an update
odroid@ODROID—H2:~$ sudo mcelog —client
Memory errors
SOCKET 1 CHANNEL 5 DIMM 0
DMI_NAME «A1_DIMM0» DMI_LOCATION «A1_BANK0»
corrected memory errors:
0 total
0 in 24h
uncorrected memory errors:
0 total
0 in 24h
SOCKET 1 CHANNEL 5 DIMM 1
DMI_NAME «A1_DIMM1» DMI_LOCATION «A1_BANK1»
corrected memory errors:
0 total
0 in 24h
uncorrected memory errors:
0 total
0 in 24h
|
[Format Time: 0.0003 seconds]
Ничего интересного, файл /var/log/mcelog запущен, и мы можем увидеть подробности об ошибках:
Crayon Syntax Highlighter v_2.7.2_beta
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
cat /var/log/mcelog
mcelog: Family 6 Model 7a CPU: only decoding architectural errors
Hardware event. This is not a software error.
MCE 0
CPU 0 BANK 1 TSC bd2ee6710
TIME 1563095601 Sun Jul 14 16:13:21 2019
MCG status:
MCi status:
Corrected error
Error enabled
Threshold based error status: green
MCA: corrected filtering (some unreported errors in same region)
Generic CACHE Level—2 Generic Error
STATUS 902000460082110a MCGSTATUS 0
MCGCAP c07 APICID 0 SOCKETID 0
CPUID Vendor Intel Family 6 Model 122
...
|
[Format Time: 0.0003 seconds]
Попробуем также рекомендуемый rasdaemon, чтобы увидеть, сможем ли мы получить аналогичные детали.
Установка:
Crayon Syntax Highlighter v_2.7.2_beta
1
|
sudo apt install rasdaemon
|
[Format Time: 0.0000 seconds]
Похоже, что служба не запустится автоматически после установки, может потребоваться перезагрузка или просто выполнить следующую команду:
Crayon Syntax Highlighter v_2.7.2_beta
1
|
service rasdaemon start
|
[Format Time: 0.0000 seconds]
Выполняем несколько команд, и вначале нам показалось, что может понадобиться какой-то драйвер:
Crayon Syntax Highlighter v_2.7.2_beta
1
2
3
4
|
ras—mc—ctl —mainboard
ras—mc—ctl: mainboard: HARDKERNEL model ODROID—H2
sudo ras—mc—ctl —status
ras—mc—ctl: drivers not loaded.
|
[Format Time: 0.0001 seconds]
Это должно быть связано с драйверами EDAC, которые используются для памяти ECC в соответствии с соединением в Grokbase. Процессоры Gemini Lake не поддерживают память ECC, поэтому, вероятно, она нам не понадобится.
Запустим еще одну команду, чтобы показать сводку ошибок, и получаем:
Crayon Syntax Highlighter v_2.7.2_beta
1
2
3
4
5
6
7
8
|
sudo ras—mc—ctl —summary
No Memory errors.
No PCIe AER errors.
No Extlog errors.
MCE records summary:
12 corrected filtering (some unreported errors in same region) Generic CACHE Level—2 Generic Error errors
|
[Format Time: 0.0001 seconds]
12-ая исправленная ошибка, связанная с кешем L2. Мы можем получить полную информацию с помощью соответствующей команды:
Crayon Syntax Highlighter v_2.7.2_beta
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
sudo ras—mc—ctl —errors
No Memory errors.
No PCIe AER errors.
No Extlog errors.
MCE events:
1 2019—07—15 20:41:09 +0700 error: corrected filtering (some unreported errors in same region) Generic CACHE Level—2 Generic Error, mcg mcgstatus=0, mci Corrected_error Error_enabled Threshold based error status: green, Large number of corrected cache errors. System operating, but might leadto uncorrected errors soon, mcgcap=0x00000c07, status=0x942000460082110a, addr=0x243e9f840, tsc=0x8b99a7f84108, walltime=0x5d2c8276, cpuid=0x000706a1, bank=0x00000001
2 2019—07—16 01:34:09 +0700 error: corrected filtering (some unreported errors in same region) Generic CACHE Level—2 Generic Error, mcg mcgstatus=0, mci Corrected_error Error_enabled Threshold based error status: green, Large number of corrected cache errors. System operating, but might leadto uncorrected errors soon, mcgcap=0x00000c07, status=0x942000460082110a, addr=0x24b9df840, tsc=0xa38afb430944, walltime=0x5d2cc722, cpuid=0x000706a1, bank=0x00000001
3 2019—07—16 01:50:08 +0700 error: corrected filtering (some unreported errors in same region) Generic CACHE Level—2 Generic Error, mcg mcgstatus=0, mci Corrected_error Error_enabled Threshold based error status: green, Large number of corrected cache errors. System operating, but might leadto uncorrected errors soon, mcgcap=0x00000c07, status=0x902000420082110a, tsc=0xa4d95741ee28, walltime=0x5d2ccae1, cpuid=0x000706a1, bank=0x00000001
4 2019—07—16 01:50:08 +0700 error: corrected filtering (some unreported errors in same region) Generic CACHE Level—2 Generic Error, mcg mcgstatus=0, mci Corrected_error Error_enabled Threshold based error status: green, Large number of corrected cache errors. System operating, but might leadto uncorrected errors soon, mcgcap=0x00000c07, status=0x902000420082110a, tsc=0xa4d957436320, walltime=0x5d2ccae1, cpuid=0x000706a1, bank=0x00000001
5 2019—07—16 01:50:08 +0700 error: corrected filtering (some unreported errors in same region) Generic CACHE Level—2 Generic Error, mcg mcgstatus=0, mci Corrected_error Error_enabled Threshold based error status: green, Large number of corrected cache errors. System operating, but might leadto uncorrected errors soon, mcgcap=0x00000c07, status=0x902000420082110a, tsc=0xa4d957451d82, walltime=0x5d2ccae1, cpuid=0x000706a1, bank=0x00000001
6 2019—07—16 01:50:08 +0700 error: corrected filtering (some unreported errors in same region) Generic CACHE Level—2 Generic Error, mcg mcgstatus=0, mci Corrected_error Error_enabled Threshold based error status: green, Large number of corrected cache errors. System operating, but might leadto uncorrected errors soon, mcgcap=0x00000c07, status=0x902000420082110a, tsc=0xa4d957456482, walltime=0x5d2ccae1, cpuid=0x000706a1, bank=0x00000001
7 2019—07—16 03:20:09 +0700 error: corrected filtering (some unreported errors in same region) Generic CACHE Level—2 Generic Error, mcg mcgstatus=0, mci Corrected_error Error_enabled Threshold based error status: green, Large number of corrected cache errors. System operating, but might leadto uncorrected errors soon, mcgcap=0x00000c07, status=0x902000400082110a, tsc=0xac3468f91976, walltime=0x5d2cdffa, cpuid=0x000706a1, bank=0x00000001
8 2019—07—16 03:20:09 +0700 error: corrected filtering (some unreported errors in same region) Generic CACHE Level—2 Generic Error, mcg mcgstatus=0, mci Corrected_error Error_enabled Threshold based error status: green, Large number of corrected cache errors. System operating, but might leadto uncorrected errors soon, mcgcap=0x00000c07, status=0x902000400082110a, tsc=0xac3468fb7a3a, walltime=0x5d2cdffa, cpuid=0x000706a1, bank=0x00000001
9 2019—07—16 15:08:09 +0700 error: corrected filtering (some unreported errors in same region) Generic CACHE Level—2 Generic Error, mcg mcgstatus=0, mci Corrected_error Error_enabled Threshold based error status: green, Large number of corrected cache errors. System operating, but might leadto uncorrected errors soon, mcgcap=0x00000c07, status=0x902000460082110a, tsc=0xe60f3181c782, walltime=0x5d2d85ea, cpuid=0x000706a1, bank=0x00000001
10 2019—07—16 15:08:09 +0700 error: corrected filtering (some unreported errors in same region) Generic CACHE Level—2 Generic Error, mcg mcgstatus=0, mci Corrected_error Error_enabled Threshold based error status: green, Large number of corrected cache errors. System operating, but might leadto uncorrected errors soon, mcgcap=0x00000c07, status=0x902000460082110a, tsc=0xe60f31852002, walltime=0x5d2d85ea, cpuid=0x000706a1, bank=0x00000001
11 2019—07—17 02:52:09 +0700 error: corrected filtering (some unreported errors in same region) Generic CACHE Level—2 Generic Error, mcg mcgstatus=0, mci Corrected_error Error_enabled Threshold based error status: green, Large number of corrected cache errors. System operating, but might leadto uncorrected errors soon, mcgcap=0x00000c07, status=0x942000460082110a, addr=0x249c5f840, tsc=0x11f964ae442b2, walltime=0x5d2e2aea, cpuid=0x000706a1, bank=0x00000001
12 2019—07—17 15:24:09 +0700 error: corrected filtering (some unreported errors in same region) Generic CACHE Level—2 Generic Error, mcg mcgstatus=0, mci Corrected_error Error_enabled Threshold based error status: green, Large number of corrected cache errors. System operating, but might leadto uncorrected errors soon, mcgcap=0x00000c07, status=0x902000440082110a, tsc=0x15d0984e5de54, walltime=0x5d2edb2a, cpuid=0x000706a1, bank=0x00000001
|
[Format Time: 0.0024 seconds]
Статус зеленый, что означает, что все по-прежнему работает, но утилита сообщает о «большом количестве исправленных ошибок кэша» и «система работает, но может вскоре привести к неисправленным ошибкам» (см.Исходный код). Это происходит несколько раз в день, и не понятно, что можно сделать с кешем, поскольку его нельзя изменить, так как он встроен в процессор, возможно, это просто проблема с процессором, который мы используем. Если у кого-то работает ODROID-H2, может быть полезно проверить журнал ядра с помощью dmesg, чтобы увидеть, есть ли у вас такие же ошибки. Если да, укажите также, у вас плата из первой партии (ноябрь 2018 г.) или одна из новых плат ODROID-H2 Rev B.
Выражаем свою благодарность источнику из которого взята и переведена статья, сайту cnx-software.com.
Оригинал статьи вы можете прочитать здесь.