Patchwork powerpc: ratelimit users spamming kernel log buffer

login
register
mail settings
Submitter Michael Neuling
Date March 14, 2014, 6:03 a.m.
Message ID <17889.1394777038@ale.ozlabs.ibm.com>
Download mbox | patch
Permalink /patch/330212/
State Accepted
Commit ee4ed6fa5af0009a1205498d1f754fecc7af7657
Headers show

Comments

Michael Neuling - March 14, 2014, 6:03 a.m.
The facility unavailable exception can be triggered from userspace by
accessing PMU registers when EBB is not enabled.  This causes the
included pr_err() to run, hence spamming the kernel log buffer.

This avoids this by rate limiting these messages.

Signed-off-by: Michael Neuling <mikey@neuling.org>
---
We can bike shed the hell out of this one.  We could just remove it, or
we could put it under the control of show_unhandled_signals.

Patch

diff --git a/arch/powerpc/kernel/traps.c b/arch/powerpc/kernel/traps.c
index e435bc0..7836de3f 100644
--- a/arch/powerpc/kernel/traps.c
+++ b/arch/powerpc/kernel/traps.c
@@ -1340,8 +1340,9 @@  void facility_unavailable_exception(struct pt_regs *regs)
 	if (!arch_irq_disabled_regs(regs))
 		local_irq_enable();
 
-	pr_err("%sFacility '%s' unavailable, exception at 0x%lx, MSR=%lx\n",
-	       hv ? "Hypervisor " : "", facility, regs->nip, regs->msr);
+	pr_err_ratelimited(
+		"%sFacility '%s' unavailable, exception at 0x%lx, MSR=%lx\n",
+		hv ? "Hypervisor " : "", facility, regs->nip, regs->msr);
 
 	if (user_mode(regs)) {
 		_exception(SIGILL, regs, ILL_ILLOPC, regs->nip);