• H
    x86, mce: CE in last bank prevents panic by unknown MCE · 680b6cfd
    Hidetoshi Seto 提交于
    If MCE handler is called but none of mces_seen have machine
    check event which might signal the MCE (i.e. event higher than
    MCE_KEEP_SEVERITY), panic with "Machine check from unknown
    source" will be taken since the MCE is assumed to be signaled
    from external agent or so.
    
    Usually mces_seen never point MCE_KEEP_SEVERITY event such as
    CE. But it can happen because initial value of mces_seen is
    accidentally modified by mce_no_way_out() - in case if
    mce_no_way_out() run through all banks and the last bank has
    the CE, mces_seen points the CE and the "panic by unknown" will
    not be taken.
    
    This patch fixes this undesired behavior, and clarifies the logic.
    Signed-off-by: NHidetoshi Seto <seto.hidetoshi@jp.fujitsu.com>
    Cc: H. Peter Anvin <hpa@zytor.com>
    Cc: Andi Kleen <ak@linux.intel.com>
    Cc: Jin Dongming <jin.dongming@np.css.fujitsu.com>
    LKML-Reference: <4A94E244.3020301@jp.fujitsu.com>
    Signed-off-by: NIngo Molnar <mingo@elte.hu>
    Reported-by: NJin Dongming <jin.dongming@np.css.fujitsu.com>
    680b6cfd
mce.c 47.0 KB