MCE, AMD: Dump CPU f/m/s triple with the error
It is very useful to have the family/model/stepping with the reported error so dump it. This saves us asking the bug reporter about it. Signed-off-by: Borislav Petkov <borislav.petkov@amd.com>
This commit is contained in:
parent
f05c41a9c6
commit
f89f8388cd
|
@ -670,14 +670,16 @@ static bool amd_filter_mce(struct mce *m)
|
||||||
int amd_decode_mce(struct notifier_block *nb, unsigned long val, void *data)
|
int amd_decode_mce(struct notifier_block *nb, unsigned long val, void *data)
|
||||||
{
|
{
|
||||||
struct mce *m = (struct mce *)data;
|
struct mce *m = (struct mce *)data;
|
||||||
struct cpuinfo_x86 *c = &boot_cpu_data;
|
struct cpuinfo_x86 *c = &cpu_data(m->extcpu);
|
||||||
int ecc;
|
int ecc;
|
||||||
|
|
||||||
if (amd_filter_mce(m))
|
if (amd_filter_mce(m))
|
||||||
return NOTIFY_STOP;
|
return NOTIFY_STOP;
|
||||||
|
|
||||||
pr_emerg(HW_ERR "CPU:%d\tMC%d_STATUS[%s|%s|%s|%s|%s",
|
pr_emerg(HW_ERR "CPU:%d (%x:%x:%x) MC%d_STATUS[%s|%s|%s|%s|%s",
|
||||||
m->extcpu, m->bank,
|
m->extcpu,
|
||||||
|
c->x86, c->x86_model, c->x86_mask,
|
||||||
|
m->bank,
|
||||||
((m->status & MCI_STATUS_OVER) ? "Over" : "-"),
|
((m->status & MCI_STATUS_OVER) ? "Over" : "-"),
|
||||||
((m->status & MCI_STATUS_UC) ? "UE" : "CE"),
|
((m->status & MCI_STATUS_UC) ? "UE" : "CE"),
|
||||||
((m->status & MCI_STATUS_MISCV) ? "MiscV" : "-"),
|
((m->status & MCI_STATUS_MISCV) ? "MiscV" : "-"),
|
||||||
|
@ -697,7 +699,7 @@ int amd_decode_mce(struct notifier_block *nb, unsigned long val, void *data)
|
||||||
pr_cont("]: 0x%016llx\n", m->status);
|
pr_cont("]: 0x%016llx\n", m->status);
|
||||||
|
|
||||||
if (m->status & MCI_STATUS_ADDRV)
|
if (m->status & MCI_STATUS_ADDRV)
|
||||||
pr_emerg(HW_ERR "\tMC%d_ADDR: 0x%016llx\n", m->bank, m->addr);
|
pr_emerg(HW_ERR "MC%d_ADDR: 0x%016llx\n", m->bank, m->addr);
|
||||||
|
|
||||||
switch (m->bank) {
|
switch (m->bank) {
|
||||||
case 0:
|
case 0:
|
||||||
|
|
Loading…
Reference in New Issue
Block a user