summaryrefslogtreecommitdiff
path: root/arch
diff options
context:
space:
mode:
authorRunmin Wang <runminw@codeaurora.org>2016-04-07 14:11:37 -0700
committerJeevan Shriram <jshriram@codeaurora.org>2016-04-07 16:03:31 -0700
commitffba972fb3b0964b6cc1c4e1fd6a52f899129c9d (patch)
tree61e729a55080a7a4e5795079140278e162396597 /arch
parent25f5535451b198c9df02b66d27e0e432f8b8e17e (diff)
arm64: Check for parity errors on synchronous aborts
Certain types of fatal synchronous aborts may be triggered by parity errors in the L1 or L2 caches. Check whether a parity error occurred and print out the relevant information. CRs-Fixed: 1000767 Change-Id: I12b0341148f05a3129e8b1aed3ba322277276360 Signed-off-by: Runmin Wang <runminw@codeaurora.org>
Diffstat (limited to 'arch')
-rw-r--r--arch/arm64/mm/fault.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/arm64/mm/fault.c b/arch/arm64/mm/fault.c
index 92ddac1e8ca2..c2a5a018bd00 100644
--- a/arch/arm64/mm/fault.c
+++ b/arch/arm64/mm/fault.c
@@ -38,6 +38,7 @@
#include <asm/system_misc.h>
#include <asm/pgtable.h>
#include <asm/tlbflush.h>
+#include <asm/edac.h>
static const char *fault_name(unsigned int esr);
@@ -376,6 +377,7 @@ static int __kprobes do_translation_fault(unsigned long addr,
*/
static int do_bad(unsigned long addr, unsigned int esr, struct pt_regs *regs)
{
+ arm64_check_cache_ecc(NULL);
return 1;
}