From 62c2618171c1b129988ecc9b25ef0d6ad4c78057 Mon Sep 17 00:00:00 2001 From: "David S. Miller" Date: Wed, 29 Nov 2006 21:16:21 -0800 Subject: [PATCH] --- yaml --- r: 44158 b: refs/heads/master c: a2c1e064c45f5126625121f58afa423e13c55efc h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/arch/sparc64/kernel/traps.c | 12 +++++++++++- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index 73dcfcf3992c..0746dd0414d3 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: c449c38b5df1fad556ea210deb6cff3b27323e49 +refs/heads/master: a2c1e064c45f5126625121f58afa423e13c55efc diff --git a/trunk/arch/sparc64/kernel/traps.c b/trunk/arch/sparc64/kernel/traps.c index ec7a60142bec..ad67784292db 100644 --- a/trunk/arch/sparc64/kernel/traps.c +++ b/trunk/arch/sparc64/kernel/traps.c @@ -10,7 +10,7 @@ */ #include -#include /* for jiffies */ +#include #include #include #include @@ -1873,6 +1873,16 @@ void sun4v_resum_error(struct pt_regs *regs, unsigned long offset) 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);