[Devel] Re: [SPARC64]: resumable error decoding

David Miller davem at davemloft.net
Thu Nov 30 12:29:46 PST 2006


From: Kirill Korotaev <dev at sw.ru>
Date: Wed, 22 Nov 2006 13:19:28 +0300

> > I should add proper support for this, this report is a good reminder
> > :-)
> would be nice :@)

I tested the following patch and it worked fine for me on a T2000, let
me know if it works for you too:

commit 035f09edbbc921b9688a65ec58c0f49b822e605c
Author: David S. Miller <davem at sunset.davemloft.net>
Date:   Wed Nov 29 21:16:21 2006 -0800

    [SPARC64]: Run ctrl-alt-del action for sun4v powerdown request.
    
    Signed-off-by: David S. Miller <davem at davemloft.net>

diff --git a/arch/sparc64/kernel/traps.c b/arch/sparc64/kernel/traps.c
index ec7a601..ad67784 100644
--- a/arch/sparc64/kernel/traps.c
+++ b/arch/sparc64/kernel/traps.c
@@ -10,7 +10,7 @@
  */
 
 #include <linux/module.h>
-#include <linux/sched.h>  /* for jiffies */
+#include <linux/sched.h>
 #include <linux/kernel.h>
 #include <linux/kallsyms.h>
 #include <linux/signal.h>
@@ -1873,6 +1873,16 @@ void sun4v_resum_error(struct pt_regs *r
 
 	put_cpu();
 
+	if (ent->err_type == SUN4V_ERR_TYPE_WARNING_RES) {
+		/* If err_type is 0x4, it's a powerdown request.  Do
+		 * not do the usual resumable error log because that
+		 * makes it look like some abnormal error.
+		 */
+		printk(KERN_INFO "Power down request...\n");
+		kill_cad_pid(SIGINT, 1);
+		return;
+	}
+
 	sun4v_log_error(regs, &local_copy, cpu,
 			KERN_ERR "RESUMABLE ERROR",
 			&sun4v_resum_oflow_cnt);




More information about the Devel mailing list