summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichal Suchanek <msuchanek@suse.de>2018-09-26 15:24:30 +0300
committerMichael Ellerman <mpe@ellerman.id.au>2018-10-03 08:40:06 +0300
commit8a03e81cb14712f986c5d5fa42a30ff2cbe3237c (patch)
tree77789ab43f439a447a774a5b9f316bc8ef0e5fb1
parent51303113e32fd92d327b3c441c45e235642fa69c (diff)
downloadlinux-8a03e81cb14712f986c5d5fa42a30ff2cbe3237c.tar.xz
powerpc/64s: consolidate MCE counter increment.
The code in machine_check_exception excludes 64s hvmode when incrementing the MCE counter only to call opal_machine_check to increment it specifically for this case. Remove the exclusion and special case. Fixes: a43c1590426c ("powerpc/pseries: Flush SLB contents on SLB MCE errors.") Signed-off-by: Michal Suchanek <msuchanek@suse.de> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
-rw-r--r--arch/powerpc/kernel/traps.c4
-rw-r--r--arch/powerpc/platforms/powernv/opal.c2
2 files changed, 1 insertions, 5 deletions
diff --git a/arch/powerpc/kernel/traps.c b/arch/powerpc/kernel/traps.c
index 5ef85ab49dc3..fd58749b4d6b 100644
--- a/arch/powerpc/kernel/traps.c
+++ b/arch/powerpc/kernel/traps.c
@@ -741,9 +741,7 @@ void machine_check_exception(struct pt_regs *regs)
if (!nested)
nmi_enter();
- /* 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);
+ __this_cpu_inc(irq_stat.mce_exceptions);
add_taint(TAINT_MACHINE_CHECK, LOCKDEP_NOW_UNRELIABLE);
diff --git a/arch/powerpc/platforms/powernv/opal.c b/arch/powerpc/platforms/powernv/opal.c
index 06bf532fa000..a4641515956f 100644
--- a/arch/powerpc/platforms/powernv/opal.c
+++ b/arch/powerpc/platforms/powernv/opal.c
@@ -578,8 +578,6 @@ int opal_machine_check(struct pt_regs *regs)
{
struct machine_check_event evt;
- __this_cpu_inc(irq_stat.mce_exceptions);
-
if (!get_mce_event(&evt, MCE_EVENT_RELEASE))
return 0;