Forráskód Böngészése

powerpc/64s: Fix mce accounting for powernv

On 64-bit Book3s, when we're in HV mode, we have already counted the
machine check exception in machine_check_early().

Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
[mpe: Use IS_ENABLED() rather than an #ifdef]
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Nicholas Piggin 8 éve
szülő
commit
f886f0f6e0
1 módosított fájl, 3 hozzáadás és 1 törlés
  1. 3 1
      arch/powerpc/kernel/traps.c

+ 3 - 1
arch/powerpc/kernel/traps.c

@@ -755,7 +755,9 @@ void machine_check_exception(struct pt_regs *regs)
 	enum ctx_state prev_state = exception_enter();
 	enum ctx_state prev_state = exception_enter();
 	int recover = 0;
 	int recover = 0;
 
 
-	__this_cpu_inc(irq_stat.mce_exceptions);
+	/* 64s accounts the mce in machine_check_early when in HVMODE */
+	if (!IS_ENABLED(CONFIG_PPC_BOOK3S_64) || !cpu_has_feature(CPU_FTR_HVMODE))
+		__this_cpu_inc(irq_stat.mce_exceptions);
 
 
 	add_taint(TAINT_MACHINE_CHECK, LOCKDEP_NOW_UNRELIABLE);
 	add_taint(TAINT_MACHINE_CHECK, LOCKDEP_NOW_UNRELIABLE);