On 10/02/2014 10:28 PM, tip-bot for Wei Huang wrote: > Commit-ID: cc6cd47e7395bc05c5077009808b820633eb3f18 > Gitweb: http://git.kernel.org/tip/cc6cd47e7395bc05c5077009808b820633eb3f18 > Author: Wei Huang <wei@xxxxxxxxxx> > AuthorDate: Wed, 24 Sep 2014 22:55:14 -0500 > Committer: Ingo Molnar <mingo@xxxxxxxxxx> > CommitDate: Fri, 3 Oct 2014 06:04:41 +0200 > > perf/x86: Tone down kernel messages when the PMU check fails in a virtual environment > > PMU checking can fail due to various reasons. On native machine, this > is mostly caused by faulty hardware and it is reasonable to use > KERN_ERR in reporting. However, when kernel is running on virtualized > environment, this checking can fail if virtual PMU is not supported > (e.g. KVM on AMD host). It is annoying to see an error message on > splash screen, even though we know such failure is benign on > virtualized environment. > > This patch checks if the kernel is running in a virtualized environment. > If so, it will use KERN_INFO in reporting, which reduces the syslog > priority of them. This patch was tested successfully on KVM. > > Signed-off-by: Wei Huang <wei@xxxxxxxxxx> > Signed-off-by: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx> > Cc: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx> > Link: http://lkml.kernel.org/r/1411617314-24659-1-git-send-email-wei@xxxxxxxxxx > Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx> > --- > arch/x86/kernel/cpu/perf_event.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/arch/x86/kernel/cpu/perf_event.c b/arch/x86/kernel/cpu/perf_event.c > index 918d75f..16c7302 100644 > --- a/arch/x86/kernel/cpu/perf_event.c > +++ b/arch/x86/kernel/cpu/perf_event.c > @@ -243,7 +243,8 @@ static bool check_hw_exists(void) > > msr_fail: > printk(KERN_CONT "Broken PMU hardware detected, using software events only.\n"); > - printk(KERN_ERR "Failed to access perfctr msr (MSR %x is %Lx)\n", reg, val_new); > + printk(boot_cpu_has(X86_FEATURE_HYPERVISOR) ? KERN_INFO : KERN_ERR > + "Failed to access perfctr msr (MSR %x is %Lx)\n", reg, val_new); > This is bogus. String concatenation doesn't work like that. Try "%sFailed...", boot_cpu_has(X86_FEATURE_HYPERVISOR) ? KERN_ERR : KERN_INFO), etc. --Andy -- To unsubscribe from this list: send the line "unsubscribe linux-tip-commits" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html
![]() |