diff options
Diffstat (limited to 'arch/powerpc/platforms/pseries/ras.c')
-rw-r--r-- | arch/powerpc/platforms/pseries/ras.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/arch/powerpc/platforms/pseries/ras.c b/arch/powerpc/platforms/pseries/ras.c index fbd214d68b07..b046bcf7443d 100644 --- a/arch/powerpc/platforms/pseries/ras.c +++ b/arch/powerpc/platforms/pseries/ras.c | |||
@@ -49,14 +49,14 @@ | |||
49 | #include <asm/machdep.h> | 49 | #include <asm/machdep.h> |
50 | #include <asm/rtas.h> | 50 | #include <asm/rtas.h> |
51 | #include <asm/udbg.h> | 51 | #include <asm/udbg.h> |
52 | #include <asm/firmware.h> | ||
53 | |||
54 | #include "ras.h" | ||
52 | 55 | ||
53 | static unsigned char ras_log_buf[RTAS_ERROR_LOG_MAX]; | 56 | static unsigned char ras_log_buf[RTAS_ERROR_LOG_MAX]; |
54 | static DEFINE_SPINLOCK(ras_log_buf_lock); | 57 | static DEFINE_SPINLOCK(ras_log_buf_lock); |
55 | 58 | ||
56 | char mce_data_buf[RTAS_ERROR_LOG_MAX] | 59 | char mce_data_buf[RTAS_ERROR_LOG_MAX]; |
57 | ; | ||
58 | /* This is true if we are using the firmware NMI handler (typically LPAR) */ | ||
59 | extern int fwnmi_active; | ||
60 | 60 | ||
61 | static int ras_get_sensor_state_token; | 61 | static int ras_get_sensor_state_token; |
62 | static int ras_check_exception_token; | 62 | static int ras_check_exception_token; |
@@ -280,7 +280,7 @@ static void fwnmi_release_errinfo(void) | |||
280 | printk("FWNMI: nmi-interlock failed: %d\n", ret); | 280 | printk("FWNMI: nmi-interlock failed: %d\n", ret); |
281 | } | 281 | } |
282 | 282 | ||
283 | void pSeries_system_reset_exception(struct pt_regs *regs) | 283 | int pSeries_system_reset_exception(struct pt_regs *regs) |
284 | { | 284 | { |
285 | if (fwnmi_active) { | 285 | if (fwnmi_active) { |
286 | struct rtas_error_log *errhdr = fwnmi_get_errinfo(regs); | 286 | struct rtas_error_log *errhdr = fwnmi_get_errinfo(regs); |
@@ -289,6 +289,7 @@ void pSeries_system_reset_exception(struct pt_regs *regs) | |||
289 | } | 289 | } |
290 | fwnmi_release_errinfo(); | 290 | fwnmi_release_errinfo(); |
291 | } | 291 | } |
292 | return 0; /* need to perform reset */ | ||
292 | } | 293 | } |
293 | 294 | ||
294 | /* | 295 | /* |