summaryrefslogtreecommitdiffstats
path: root/lib/libc
diff options
context:
space:
mode:
authorkettenis <kettenis@openbsd.org>2012-04-11 18:36:57 +0000
committerkettenis <kettenis@openbsd.org>2012-04-11 18:36:57 +0000
commit6df0f8ce86b1074bf0dc0672fba71a58fdce4db9 (patch)
tree8ccfc56896ba126589899b9ba281a315ccc5cc3e /lib/libc
parentmake has had heuristics to avoid parallel make recursion. (diff)
downloadwireguard-openbsd-6df0f8ce86b1074bf0dc0672fba71a58fdce4db9.tar.xz
wireguard-openbsd-6df0f8ce86b1074bf0dc0672fba71a58fdce4db9.zip
Mark outermost frame such that backtraces in thread terminate at
__tfork_thread(). ok guenther@
Diffstat (limited to 'lib/libc')
-rw-r--r--lib/libc/arch/i386/sys/tfork_thread.S5
1 files changed, 3 insertions, 2 deletions
diff --git a/lib/libc/arch/i386/sys/tfork_thread.S b/lib/libc/arch/i386/sys/tfork_thread.S
index bc4feddc3ce..4b7de1b030c 100644
--- a/lib/libc/arch/i386/sys/tfork_thread.S
+++ b/lib/libc/arch/i386/sys/tfork_thread.S
@@ -1,4 +1,4 @@
-/* $OpenBSD: tfork_thread.S,v 1.1 2012/03/22 00:44:55 guenther Exp $ */
+/* $OpenBSD: tfork_thread.S,v 1.2 2012/04/11 18:36:57 kettenis Exp $ */
/*-
* Copyright (c) 2000 Peter Wemm <peter@FreeBSD.org>
* All rights reserved.
@@ -91,7 +91,8 @@ ENTRY(__tfork_thread)
* returns, then call __exit.
*/
1:
- movl %esi,%esp
+ xorl %ebp, %ebp # mark outermost frame
+ movl %esi, %esp
popl %eax
call *%eax
addl $4, %esp