From b0a9097a87d9a9961f57e12298c98aafb2a05db3 Mon Sep 17 00:00:00 2001 From: Mark Kettenis Date: Sat, 12 Jul 2008 08:08:55 +0000 Subject: On Fujitsu's SPARC64 CPUs, the data_access_error trap is synchronous, and AFSR will be 0. Check SFSR too, before deciding there's no fault. --- sys/arch/sparc64/sparc64/trap.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'sys/arch') diff --git a/sys/arch/sparc64/sparc64/trap.c b/sys/arch/sparc64/sparc64/trap.c index 55fc52eb12b..0a3af9cacea 100644 --- a/sys/arch/sparc64/sparc64/trap.c +++ b/sys/arch/sparc64/sparc64/trap.c @@ -1,4 +1,4 @@ -/* $OpenBSD: trap.c,v 1.62 2008/04/07 16:21:26 thib Exp $ */ +/* $OpenBSD: trap.c,v 1.63 2008/07/12 08:08:54 kettenis Exp $ */ /* $NetBSD: trap.c,v 1.73 2001/08/09 01:03:01 eeh Exp $ */ /* @@ -986,7 +986,7 @@ data_access_error(tf, type, afva, afsr, sfva, sfsr) printf("data error type %x sfsr=%lx sfva=%lx afsr=%lx afva=%lx tf=%p\n", type, sfsr, sfva, afsr, afva, tf); - if (afsr == 0) { + if (afsr == 0 && sfsr == 0) { printf("data_access_error: no fault\n"); goto out; /* No fault. Why were we called? */ } -- cgit v1.2.3