summaryrefslogtreecommitdiff
path: root/include/asm-s390
diff options
context:
space:
mode:
authorMichael Holzheu <holzheu@de.ibm.com>2006-12-15 17:18:22 +0100
committerMartin Schwidefsky <schwidefsky@de.ibm.com>2006-12-15 17:18:22 +0100
commita45e14148fb34175cba042df8979e7982758635f (patch)
tree10add976d1291f4172e95aea60e2c44594b9813d /include/asm-s390
parentb3c14d0bfd1739b930f26df90552a4d8cdcca0a6 (diff)
downloadlinux-3.10-a45e14148fb34175cba042df8979e7982758635f.tar.gz
linux-3.10-a45e14148fb34175cba042df8979e7982758635f.tar.bz2
linux-3.10-a45e14148fb34175cba042df8979e7982758635f.zip
[S390] Fix reboot hang on LPARs
Reboot hangs on LPARs without diag308 support. The reason for this is, that before the reboot is done, the channel subsystem is shut down. During the reset on each possible subchannel a "store subchannel" is done. This operation can end in a program check interruption, if the specified subchannel set is not implemented by the hardware. During the reset, currently we do not have a program check handler, which leads to the described kernel bug. We install now a new program check handler for the reboot code to fix this problem. Signed-off-by: Michael Holzheu <holzheu@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'include/asm-s390')
-rw-r--r--include/asm-s390/reset.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/include/asm-s390/reset.h b/include/asm-s390/reset.h
index 9b439cf6780..532e65a2aaf 100644
--- a/include/asm-s390/reset.h
+++ b/include/asm-s390/reset.h
@@ -19,5 +19,6 @@ extern void register_reset_call(struct reset_call *reset);
extern void unregister_reset_call(struct reset_call *reset);
extern void s390_reset_system(void);
extern void (*s390_reset_mcck_handler)(void);
+extern void (*s390_reset_pgm_handler)(void);
#endif /* _ASM_S390_RESET_H */