Patchwork powerpc: Use WARN instead of dump_stack when printing EEH error backtrace

login
register
mail settings
Submitter Anton Blanchard
Date April 18, 2012, 5:16 a.m.
Message ID <20120418151648.3106b963@kryten>
Download mbox | patch
Permalink /patch/153384/
State Accepted, archived
Commit 14fb1fa6e266fb9c4622b210d2636a2004a47e2b
Delegated to: Benjamin Herrenschmidt
Headers show

Comments

Anton Blanchard - April 18, 2012, 5:16 a.m.
When we get an EEH error we just print a backtrace with dump_stack
which is rather cryptic. We really should print something before
spewing out the backtrace.

Also switch from dump_stack to WARN so we get more information about
the fail - what modules were loaded, what process was running etc.
This was useful information when debugging a recent EEH subsystem bug.

The standard WARN output should also get picked up by monitoring
tools like kerneloops.

The register dump is of questionable value here but I figured it was
better to use something standard and not roll my own.

Signed-off-by: Anton Blanchard <anton@samba.org>
---

Patch

Index: linux-build/arch/powerpc/platforms/pseries/eeh.c
===================================================================
--- linux-build.orig/arch/powerpc/platforms/pseries/eeh.c	2012-04-13 10:29:53.576534339 +1000
+++ linux-build/arch/powerpc/platforms/pseries/eeh.c	2012-04-13 10:51:22.592822459 +1000
@@ -489,7 +489,7 @@  int eeh_dn_check_failure(struct device_n
 	 * a stack trace will help the device-driver authors figure
 	 * out what happened.  So print that out.
 	 */
-	dump_stack();
+	WARN(1, "EEH: failure detected\n");
 	return 1;
 
 dn_unlock: