[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] [PATCH] x86/cpu: Reduce boot-time logspam



These messages are printed per-cpu with no cpu identifying information.  There
is no reason to print them for each cpu, so restrict them to cpu 0 only.
Futhermore, "MCE support disabled by bootparam" really doesn't warrent having
a file:line reference.

Signed-off-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
CC: Keir Fraser <keir@xxxxxxx>
CC: Jan Beulich <JBeulich@xxxxxxxx>
CC: Ian Campbell <Ian.Campbell@xxxxxxxxxx>

---

Discovered when testing Xen-4.4-rc2 on an Haswell SDP platform with some MCE
and Cstate quirks.  We have still not debugged whether it is the SDP or Xen
which is at fault, but Xen 4.3 and 4.4 needs "max_cstate=1 mce=off" to
successfully boot on it.

I am on the fence as to whether this should be proposed for inclusion into
4.4.  Boot-time logspam is not a massive problem, but on the other hand, it
contributes against "#2 An awesome release" and the fixes are quite obvious
with a very low risk of hidden further bugs.
---
 xen/arch/x86/cpu/mcheck/mce.c |    4 ++--
 xen/arch/x86/cpu/mwait-idle.c |    4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/xen/arch/x86/cpu/mcheck/mce.c b/xen/arch/x86/cpu/mcheck/mce.c
index b375ef7..6726ec2 100644
--- a/xen/arch/x86/cpu/mcheck/mce.c
+++ b/xen/arch/x86/cpu/mcheck/mce.c
@@ -729,8 +729,8 @@ void mcheck_init(struct cpuinfo_x86 *c, bool_t bsp)
 {
     enum mcheck_type inited = mcheck_none;
 
-    if (mce_disabled == 1) {
-        dprintk(XENLOG_INFO, "MCE support disabled by bootparam\n");
+    if (bsp && mce_disabled == 1) {
+        printk(XENLOG_INFO "MCE support disabled by bootparam\n");
         return;
     }
 
diff --git a/xen/arch/x86/cpu/mwait-idle.c b/xen/arch/x86/cpu/mwait-idle.c
index 85179f2..a145289 100644
--- a/xen/arch/x86/cpu/mwait-idle.c
+++ b/xen/arch/x86/cpu/mwait-idle.c
@@ -540,7 +540,7 @@ static int mwait_idle_cpu_init(struct notifier_block *nfb,
                state = MWAIT_HINT2CSTATE(hint) + 1;
                substate = MWAIT_HINT2SUBSTATE(hint);
 
-               if (state > max_cstate) {
+               if (cpu == 0 && state > max_cstate) {
                        printk(PREFIX "max C-state %u reached\n", max_cstate);
                        break;
                }
@@ -552,7 +552,7 @@ static int mwait_idle_cpu_init(struct notifier_block *nfb,
                if (substate >= num_substates)
                        continue;
 
-               if (dev->count >= ACPI_PROCESSOR_MAX_POWER) {
+               if (cpu == 0 && dev->count >= ACPI_PROCESSOR_MAX_POWER) {
                        printk(PREFIX "max C-state count of %u reached\n",
                               ACPI_PROCESSOR_MAX_POWER);
                        break;
-- 
1.7.10.4


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.