summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--arch/s390/kernel/nmi.c29
1 files changed, 12 insertions, 17 deletions
diff --git a/arch/s390/kernel/nmi.c b/arch/s390/kernel/nmi.c
index faa40bf622f8..a98aab1f987b 100644
--- a/arch/s390/kernel/nmi.c
+++ b/arch/s390/kernel/nmi.c
@@ -34,7 +34,7 @@ struct mcck_struct {
static DEFINE_PER_CPU(struct mcck_struct, cpu_mcck);
-static void s390_handle_damage(char *msg)
+static void s390_handle_damage(void)
{
smp_send_stop();
disabled_wait((unsigned long) __builtin_return_address(0));
@@ -195,7 +195,7 @@ static int notrace s390_revalidate_registers(struct mci *mci)
* Control registers have unknown contents.
* Can't recover and therefore stopping machine.
*/
- s390_handle_damage("invalid control registers.");
+ s390_handle_damage();
} else {
asm volatile(
" lctlg 0,15,0(%0)"
@@ -228,7 +228,7 @@ static int notrace s390_revalidate_registers(struct mci *mci)
* Can't tell if we come from user or kernel mode
* -> stopping machine.
*/
- s390_handle_damage("old psw invalid.");
+ s390_handle_damage();
if (!mci->ms || !mci->pm || !mci->ia)
kill_task = 1;
@@ -265,7 +265,7 @@ void notrace s390_do_machine_check(struct pt_regs *regs)
if (mci->sd) {
/* System damage -> stopping machine */
- s390_handle_damage("received system damage machine check.");
+ s390_handle_damage();
}
if (mci->pd) {
if (mci->b) {
@@ -280,8 +280,7 @@ void notrace s390_do_machine_check(struct pt_regs *regs)
if (((t_mcic & z_mcic) != 0) ||
((t_mcic & o_mcic) != o_mcic)) {
- s390_handle_damage("processing backup machine "
- "check with damage.");
+ s390_handle_damage();
}
/*
@@ -296,12 +295,11 @@ void notrace s390_do_machine_check(struct pt_regs *regs)
ipd_count = 1;
last_ipd = tmp;
if (ipd_count == MAX_IPD_COUNT)
- s390_handle_damage("too many ipd retries.");
+ s390_handle_damage();
spin_unlock(&ipd_lock);
} else {
/* Processing damage -> stopping machine */
- s390_handle_damage("received instruction processing "
- "damage machine check.");
+ s390_handle_damage();
}
}
if (s390_revalidate_registers(mci)) {
@@ -318,12 +316,12 @@ void notrace s390_do_machine_check(struct pt_regs *regs)
* Couldn't restore all register contents while in
* kernel mode -> stopping machine.
*/
- s390_handle_damage("unable to revalidate registers.");
+ s390_handle_damage();
}
}
if (mci->cd) {
/* Timing facility damage */
- s390_handle_damage("TOD clock damaged");
+ s390_handle_damage();
}
if (mci->ed && mci->ec) {
/* External damage */
@@ -340,16 +338,13 @@ void notrace s390_do_machine_check(struct pt_regs *regs)
}
if (mci->se)
/* Storage error uncorrected */
- s390_handle_damage("received storage error uncorrected "
- "machine check.");
+ s390_handle_damage();
if (mci->ke)
/* Storage key-error uncorrected */
- s390_handle_damage("received storage key-error uncorrected "
- "machine check.");
+ s390_handle_damage();
if (mci->ds && mci->fa)
/* Storage degradation */
- s390_handle_damage("received storage degradation machine "
- "check.");
+ s390_handle_damage();
if (mci->cp) {
/* Channel report word pending */
mcck->channel_report = 1;