Skip to main content
  • Place orders quickly and easily
  • View orders and track your shipping status
  • Enjoy members-only rewards and discounts
  • Create and access a list of your products

Ladění systému ESXi Machine Check Exception (MCE) PSOD

Summary: Jak ladit fialovou diagnostickou obrazovku (PSOD) ESXi Machine Check Exception (MCE) s příkladem.

This article applies to   This article does not apply to 

Instructions

Popis:

Servery ESXi se mohou zastavit s fialovou diagnostickou obrazovkou (PSOD) kvůli chybám MCE (machine check exception). Chyby MCE jsou způsobeny problémy s hardwarem.

Fialová diagnostická obrazovka MCE zobrazuje několik věcí. Z nich je registr MCi_STATUS užitečný při ladění problému.

Podrobnosti o registraci:

  • Registr MCi_STATUS obsahuje informace o chybě kontroly stroje.
  • Registr se zobrazí vedle "S:" Jak je znázorněno v následujícím příkladu:
MC: PCPU18 B:13 S:0xfe20004000011166 M:0x7246040086 A:0x38c989b100 5
 

Bity a jejich význam:

63 62 61 60 59 58 57 53-56 38-52 32-37 16-31 0-15
příznak VALID - Pokud je nastaveno, pak je informace platná. příznak OVERFLOW - Je-li nastaveno, pak může indikovat, že se vyskytlo více MCE blízko sebe Příznak UNC – Je-li nastaveno, procesor nemohl chybu opravit. EN vlajka MISCV flag - Pokud je nastaveno, pak MISC register obsahuje více informací. ADDRV - Je-li nastaveno, pak registr ADDR obsahuje, kde k chybě došlo. Příznak PCC - Pokud je nastaven, znamená to, že procesor mohl být poškozen. Architektura, pokud je nastaven bit 11, jinak "jiné informace". Architektura, pokud je nastaven bit 10, jinak "jiné informace". Další informace Chybový kód specifický pro procesor Chybový kód kontroly stroje
 

Pro ladění chyby je důležitých 16 bitů registru MCi_STATUS. Tyto bity značí jednoduchou nebo složenou chybu.

1. možnost: Použití automatického nástroje

2. možnost: Použití ručních kroků

  1. Jednoduché chyby lze snadno ladit
    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.
     
  2. Složené chyby
    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.
     
    • F - Příznak formuláře
      0 – Normal Filtering
      1 – Corrected Filtering

      Filtrování znamená, že některé nebo všechny následné opravy této položky v této struktuře nejsou zaúčtovány.

    • TT - Platí pro body 2 a 4 výše. 

      Označuje typ transakce:

      00 - Instruction
      01 - Data
      10 - Generic
    • LL – platí pro body 1, 2, 4 a 5 výše. 

      Označuje úroveň v hierarchii paměti, kde došlo k chybě

      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)
    • RRRR – Označuje typ akce spojené s chybou. Jedná se o tyto akce:
      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
       
    • PP (Participation) - Popisuje roli lokálního procesoru v chybě.
      00 - SRC - Local processor originated request
      01 - RES - Local processor responded to request
      10 - OBS - Local processor observed error as third party
      11 - Generic
       
    • T (Time-out) - 1 = Časový limit požadavku vypršel.
    • II (paměť nebo I/O)
      00 - M - Memory Access
      10 - IO - I/O
      01 - Reserved
      11 - Other transaction
       
    • Chyby řadiče paměti – definováno výše uvedenými podpoli MMM a CCCC
    • MMM – chyba paměti
      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
       
    • CCCC - Kanál s chybou
      0000-1110 - CHN - Channel number
      1111 - Channel not specified

Zde je příklad, jak analyzovat fialový diagnostický snímek obrazovky MCE:
Snímek fialového diagnostického displeje MCE
 

  1. Poznamenejte si, že hodnota registru MCi_STATUS je 0xfe20004000011166.
  2. Převeďte jej na binární:
    1111 1110 0010 0000 0000 0000 0100 0000 0000 0000 0000 0001 0001 0001 0110 0110
  3. Vezměme si spodních 16 bitů registru MCi_STATUS:
    0001 0001 0110 0110

    Porovnejte to se složenými chybami. V tomto případě se zdá, že se jedná o chybu hierarchie mezipaměti (typ 4).

  4. Použijte hodnoty:
    F = 1
    RRRR = 0110 – Prefetch
    TT = 01 – Transaction type - Data
    LL = 10 – Level 2 cache
     

Závěr:

  • Vypadá to, že fialová diagnostická obrazovka se spustila při předběžném načtení některých dat v mezipaměti L2 procesoru.
  • Může se tedy jednat o problém s L2 cache na procesoru.
  • Proto bychom měli nejprve vyměnit CPU a zkontrolovat, zda je problém vyřešen. V případě, že se problém objeví znovu, můžeme vyměnit základní desku.


 

Affected Products

Virtualization Solutions, VMware ESXi

Products

Software, Analytics