Author: andrew Date: Fri Apr 17 12:58:09 2015 New Revision: 281654 URL: https://svnweb.freebsd.org/changeset/base/281654
Log: Use the address of fsu_intr_fault, not the first two instructions in it as the address to check if we are handling a trap for fuswintr or suswintr. Sponsored by: The FreeBSD Foundation Modified: head/sys/arm64/arm64/trap.c Modified: head/sys/arm64/arm64/trap.c ============================================================================== --- head/sys/arm64/arm64/trap.c Fri Apr 17 12:40:27 2015 (r281653) +++ head/sys/arm64/arm64/trap.c Fri Apr 17 12:58:09 2015 (r281654) @@ -65,7 +65,7 @@ __FBSDID("$FreeBSD$"); #include <ddb/db_output.h> #endif -extern uintptr_t fsu_intr_fault; +extern register_t fsu_intr_fault; /* Called from exception.S */ void do_el1h_sync(struct trapframe *); @@ -154,7 +154,7 @@ data_abort(struct trapframe *frame, uint * Special case for fuswintr and suswintr. These can't sleep so * handle them early on in the trap handler. */ - if (__predict_false(pcb->pcb_onfault == fsu_intr_fault)) { + if (__predict_false(pcb->pcb_onfault == (vm_offset_t)&fsu_intr_fault)) { frame->tf_elr = pcb->pcb_onfault; return; } _______________________________________________ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"