svn commit: r248123 - head/sys/arm/arm
Andrew Turner
andrew at FreeBSD.org
Sun Mar 10 02:38:36 UTC 2013
Author: andrew
Date: Sun Mar 10 02:38:35 2013
New Revision: 248123
URL: http://svnweb.freebsd.org/changeset/base/248123
Log:
Tell the unwinder we can't unwind swi_entry. This fixes an infinite loop
when the kernel attempts to unwind through this function.
The .fnstart and .fnend in this function should be moved to macros but we
are currently missing an END macro on ARM.
Modified:
head/sys/arm/arm/exception.S
Modified: head/sys/arm/arm/exception.S
==============================================================================
--- head/sys/arm/arm/exception.S Sun Mar 10 00:47:19 2013 (r248122)
+++ head/sys/arm/arm/exception.S Sun Mar 10 02:38:35 2013 (r248123)
@@ -77,6 +77,9 @@ Lreset_panicmsg:
* Handler for the Software Interrupt exception.
*/
ASENTRY_NP(swi_entry)
+ .fnstart
+ .cantunwind /* Don't unwind past here */
+
PUSHFRAME
mov r0, sp /* Pass the frame to any function */
@@ -88,6 +91,7 @@ ASENTRY_NP(swi_entry)
DO_AST
PULLFRAME
movs pc, lr /* Exit */
+ .fnend
/*
* prefetch_abort_entry:
More information about the svn-src-head
mailing list