ESXi 伺服器可能會因為 MCE (機器檢查異常) 錯誤而停止並顯示紫色診斷畫面 (PSOD)。MCE 錯誤是由於硬體問題所導致。
MCE 紫色診斷畫面會顯示多項內容。其中,MCi_STATUS寄存器在調試問題時很有用。
註冊詳情:
比特及其意義:
63 | 62 | 61 | 60 | 59 | 58 | 57 | 53-56 | 38-52 | 32-37 | 16-31 | 0-15 |
VALID 旗標 - 如果已設定,則資訊有效。 | 溢出標誌 - 如果已設定,則可能表示多個 MCE 彼此靠近 | UNC 標誌 - 如果已設定,CPU 便無法修正錯誤。 | EN 旗標 | MISCV 旗標 - 如果已設定,則 MISC 註冊包含更多資訊。 | ADDRV - 如果已設定,則 ADDR 暫存器會包含發生錯誤的位置。 | PCC 旗標 - 如果已設定,則表示處理器可能已損毀。 | 架構 如果設置了位 11,否則為“其他資訊”。 | 架構 如果設置了位 10,則為“其他資訊”。 | 其他資訊 | CPU 特定型號的錯誤代碼 | 機器檢查錯誤代碼 |
為了調試錯誤,MCi_STATUS寄存器的低16位很重要。這些位表示簡單或複合錯誤。
選項 1:使用自動工具
選項 2:使用手動步驟
0000 0000 0000 0000 -- No Error reported to this bank of error-reporting registers. 0000 0000 0000 0001 -- Unclassified - Error has not been classified. 0000 0000 0000 0010 -- Parity error in internal microcode ROM. 0000 0000 0000 0011 -- External error-BINIT# from another processor caused this processor MCE. Happens only if BINIT# observation enabled during power on. 0000 0000 0000 0100 -- Functional redundancy check master/slave error. 0000 0000 0000 0101 -- Internal parity error. 0000 0000 0000 0110 -- SMM handler tried to execute outside the ranges specified by SMRR. 0000 0100 0000 0000 -- Internal timer error. 0000 1110 0000 1011 -- I/O error. 0000 01xx xxxx xxxx -- Internal unclassified error. Atleast one X must be equal to 1.
000F 0000 0000 11LL - Generic Cache Hierarchy error. 000F 0000 0001 TTLL - {TT}TLB{LL}_ERR. TLB errors. 000F 0000 1MMM CCCC - {MMM}_Channel{CCCC}_ERR - Memory controller errors. 000F 0001 RRRR TTLL - {TT}CACHE{LL}_{RRRR}_ERR - Cache Hierarchy errors. 000F 1PPT RRRR IILL - BUS{LL}_{PP}_{RRRR}_{II}_T_ERR - Bus and Interconnect errors.
0 – Normal Filtering
1 – Corrected Filtering
篩選意味著不會發佈此結構中對此條目的部分或全部後續更正。
指示交易類型:
00 - Instruction
01 - Data
10 - Generic
指示記憶體階層中發生錯誤的層級
00 - Level 0 - L0
01 - Level 1 - L1
10 - Level 2 - L2
11 - Generic – LG (It is shown only when processor cannot determine the hierarchy level)
0000 - Generic Error - ERR 0001 - Generic Read - RD 0010 - Generic Write - WR 0011 - Data Read - DRD 0100 - Data Write - DWR 0101 - Instruction Fetch - IRD 0110 - Prefetch - PREFETCH 0111 - Eviction - EVICT 1000 - Snoop - SNOOP
00 - SRC - Local processor originated request 01 - RES - Local processor responded to request 10 - OBS - Local processor observed error as third party 11 - Generic
00 - M - Memory Access 10 - IO - I/O 01 - Reserved 11 - Other transaction
000 - GEN - Generic undefined request 001 - RD - Memory read error 010 - WR - Memory write error 011 - AC - Address/Command error 100 - MS - Memory Scrubbing error 101-111 - Reserved
0000-1110 - CHN - Channel number
1111 - Channel not specified
下面是如何分析 MCE 紫色診斷螢幕截圖的範例:
1111 1110 0010 0000 0000 0000 0100 0000 0000 0000 0000 0001 0001 0001 0110 0110
0001 0001 0110 0110
將其與複合錯誤進行比較。在這種情況下,這似乎是緩存層次結構錯誤(類型 4)。
F = 1 RRRR = 0110 – Prefetch TT = 01 – Transaction type - Data LL = 10 – Level 2 cache
結論: