# HG changeset patch
# User Patrick Colp <Patrick.Colp@xxxxxxxxxx>
# Date 1248354987 -3600
# Node ID d2add683d6279ce10a32c57c6fbe99a772e35ad8
# Parent bc3aca17cb88b23bf6bb7c26cbed320f241aa739
Remove excess MCE debug messages.
Intel's recent modifications to the MCE code causes debug messages to be
printed when checking the MCE registers and when after checking that the
status is OK (0). The registers are periodically checked, which causes a
flood of unneeded messages to be dumped to the debug console. This can cause
actually important debug messages to be lost as the MCE messages push them
out of the console's visible output range.
Signed-off-by: Patrick Colp <Patrick.Colp@xxxxxxxxxx>
diff -r bc3aca17cb88 -r d2add683d627 xen/arch/x86/cpu/mcheck/mce.c
--- a/xen/arch/x86/cpu/mcheck/mce.c Thu Jul 23 09:01:30 2009 +0100
+++ b/xen/arch/x86/cpu/mcheck/mce.c Thu Jul 23 14:16:27 2009 +0100
@@ -685,17 +685,14 @@
case MSR_IA32_MCG_STATUS:
*lo = (u32)d->arch.vmca_msrs.mcg_status;
*hi = (u32)(d->arch.vmca_msrs.mcg_status >> 32);
- gdprintk(XENLOG_DEBUG, "MCE: rd MCG_STATUS lo %x hi %x\n", *lo, *hi);
break;
case MSR_IA32_MCG_CAP:
*lo = (u32)d->arch.vmca_msrs.mcg_cap;
*hi = (u32)(d->arch.vmca_msrs.mcg_cap >> 32);
- gdprintk(XENLOG_DEBUG, "MCE: rdmsr MCG_CAP lo %x hi %x\n", *lo, *hi);
break;
case MSR_IA32_MCG_CTL:
*lo = (u32)d->arch.vmca_msrs.mcg_ctl;
*hi = (u32)(d->arch.vmca_msrs.mcg_ctl >> 32);
- gdprintk(XENLOG_DEBUG, "MCE: rdmsr MCG_CTL lo %x hi %x\n", *lo, *hi);
break;
case MSR_IA32_MC0_CTL ... MSR_IA32_MC0_CTL + 4 * MAX_NR_BANKS - 1:
bank = (msr - MSR_IA32_MC0_CTL) / 4;
@@ -710,8 +707,6 @@
case MSR_IA32_MC0_CTL:
*lo = (u32)d->arch.vmca_msrs.mci_ctl[bank];
*hi = (u32)(d->arch.vmca_msrs.mci_ctl[bank] >> 32);
- gdprintk(XENLOG_DEBUG, "MCE: rd MC%u_CTL lo %x hi %x\n",
- bank, *lo, *hi);
break;
case MSR_IA32_MC0_STATUS:
/* Only error bank is read. Non-error banks simply return. */
@@ -729,8 +724,6 @@
else
entry = NULL;
}
- if ( !entry )
- gdprintk(XENLOG_DEBUG, "MCE: rd MC%u_STATUS\n", bank);
break;
case MSR_IA32_MC0_ADDR:
if ( !list_empty(&d->arch.vmca_msrs.impact_header) )
@@ -807,7 +800,6 @@
break;
case MSR_IA32_MCG_STATUS:
d->arch.vmca_msrs.mcg_status = value;
- gdprintk(XENLOG_DEBUG, "MCE: wrmsr MCG_STATUS %"PRIx64"\n", value);
/* For HVM guest, this is the point for deleting vMCE injection node */
if ( d->is_hvm && (d->arch.vmca_msrs.nr_injection > 0) )
{
@@ -871,9 +863,6 @@
"MCE: wr MC%u_STATUS %"PRIx64" in vMCE#\n",
bank, value);
}
- else
- gdprintk(XENLOG_DEBUG,
- "MCE: wr MC%u_STATUS %"PRIx64"\n", bank, value);
break;
case MSR_IA32_MC0_ADDR:
gdprintk(XENLOG_WARNING, "MCE: MC%u_ADDR is read-only\n", bank);
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|